簡體   English   中英

Excel VBA 根據另一個單元格的值逐行更改一個單元格的值

[英]Excel VBA change the value of a cell based on the value of another cell row by row

考慮隨附的屏幕截圖:在此處輸入圖像描述

我想在工作表中添加一個按鈕,單擊該按鈕時,它將逐行檢查該行的第一列是否包含“意大利”或“西班牙”。 如果是這樣,它應該將其點(旁邊的單元格)設置為 0。

我想用某種循環或迭代來做(不是用一堆 If/Else If),但我不是 VBA 方面的專家,我自己學習,老實說我不知道如何去做吧。

感謝您的時間。

只要您知道如何將 go InsertShapes 、選擇任何形狀(基本矩形、圓形或其他任何形狀)並將其放置在您的工作表中,您就可以右鍵單擊形狀並分配宏。

您可以將此宏粘貼到 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM