[英]Excel VBA change the value of a cell based on the value of another cell row by row
考慮隨附的屏幕截圖:在此處輸入圖像描述
我想在工作表中添加一個按鈕,單擊該按鈕時,它將逐行檢查該行的第一列是否包含“意大利”或“西班牙”。 如果是這樣,它應該將其點(旁邊的單元格)設置為 0。
我想用某種循環或迭代來做(不是用一堆 If/Else If),但我不是 VBA 方面的專家,我自己學習,老實說我不知道如何去做吧。
感謝您的時間。
只要您知道如何將 go Insert
、 Shapes
、選擇任何形狀(基本矩形、圓形或其他任何形狀)並將其放置在您的工作表中,您就可以右鍵單擊形狀並分配宏。
您可以將此宏粘貼到 VBA 宏編輯器中並保存,然后運行或按照我說的將其分配給您可以隨意單擊的形狀。
我相信其他人可以給你一個更好的宏。 這是非常基本的。 並且循環值非常低效且緩慢,但它可以滿足您的要求。
Sub MyFirstMacro()
Dim myCell As Range
Dim LastRow As Long
LastRow = Range("A" & Rows.Count).End(xlUp).Row
For Each myCell In Range("A1:A" & LastRow)
If IsError(myCell.Value) Then
myCell.Offset(0, 1) = "Do you know you had an error in " & myCell.Address & "???"
Else:
If myCell.Value = "Italy" Or myCell.Value = "Spain" Then
myCell.Offset(0, 1) = 0
End If
End If
Next myCell
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.