2017-06-06 194 views
0

你能幫我解決這個問題嗎?在Excel中看起來是這樣的:VBA Excel根據一個單元格的內容更改另一個單元格的內容

Excel Workbook

我希望自動化2項任務:

  1. 當細胞在列C中含有「處理」二字=>明確相應單元格在列A
  2. 內容
  3. 當細胞在列C包含文字「藍」 =>對應於塔B的小區變更爲0

我試圖膠印機,循環和其他各種方法,但似乎無法得到它的權利。請幫忙。

+0

請您理解,Stack Overflow是不是免費的代碼編寫的服務,因此,你需要[編輯]你的問題,表明你已經嘗試過的代碼,(1 )告訴我們你的代碼是做什麼的,以及你期望它做什麼。 (2)如果有任何錯誤消息,你會得到和在哪裏。 (3)你在代碼中遇到了哪些問題,以及你遇到了什麼困難。 –

+0

如果您的目標已經實現,請接受答案。 (單擊答案旁邊的綠色複選標記) – PalimPalim

回答

0

使用InStr功能來檢查它是否包含子字符串。欲瞭解更多信息,請看here

+0

感謝您的回答:) –

0
Sub removeprocessed() 
Dim Nlines As Long 
Dim i As Long 
Nlines = Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row 
For i = 2 To Nlines 
    If 0 <> InStr(1, Cells(i, 3).Value, "processed") Then 
     Cells(i, 1).Value = "" 
    End If 
    If 0 <> InStr(1, Cells(i, 3).Value, "blue") Then 
     Cells(i, 2).Value = 0 
    End If 
Next 
End Sub 

使用InStr函數所提議的@UGP

+0

(1)如果您發佈代碼,則應遵循[VBA最佳實踐](https://stackoverflow.com/documentation/excel-vba/ 1107/vba-best-practices)指南:例如始終完全限定單元格和範圍(2)除非與舊API進行通信,否則不要使用Integer(而是始終使用Long):Excel具有比Integer可處理更多的行。 (3)將一個值設置爲字符串'.Value =「0」'不是一個好主意,而應該使用'.Value = 0'(4)我知道你只是想幫忙,但我認爲我們不應該回答那些是因爲只詢問代碼而無關緊要。 –

+0

@PalimPalim非常感謝您的幫助。非常感謝 –

+0

@Peh注意到這些。我很抱歉,因爲我是該網站的新手。 –

相關問題