如何使用命令按钮根据Excel中单元格的当前值更新单元格区域?

如何使用命令按钮根据Excel中单元格的当前值更新单元格区域?,excel,vba,button,Excel,Vba,Button,我正在Excel中工作,并尝试创建一个命令按钮,该按钮将根据单元格的当前值更新单元格中的值,并沿整个列向下更新 更具体地说,我有一个列,它的位置ID是整数。单击后,我希望该列中包含值1或2的所有单元格都更改为10。然后,我想运行一个预录制的排序宏 我找到了有关级联If语句的信息,这似乎是关键。我原以为下面这样的方法可能行得通,但它一直告诉我我有一个逻辑错误 Private子命令按钮1\u单击() 如果范围(“位置ID”)=1,则 范围(“位置ID”)=10 其他的 如果范围(“位置ID”)=2,

我正在Excel中工作,并尝试创建一个命令按钮,该按钮将根据单元格的当前值更新单元格中的值,并沿整个列向下更新

更具体地说,我有一个列,它的位置ID是整数。单击后,我希望该列中包含值1或2的所有单元格都更改为10。然后,我想运行一个预录制的排序宏

我找到了有关级联If语句的信息,这似乎是关键。我原以为下面这样的方法可能行得通,但它一直告诉我我有一个逻辑错误

Private子命令按钮1\u单击()
如果范围(“位置ID”)=1,则
范围(“位置ID”)=10
其他的
如果范围(“位置ID”)=2,则
范围(“位置ID”)=10
如果结束
末端接头

Location是我试图搜索和更改的列。我还没有将我的sort宏添加到此列中,因为我假设它与调用宏的任何其他按钮一样工作


这可能是非常基本的,但VBA对我来说是完全陌生的。我整个上午都在为这个问题绞尽脑汁。谢谢你的帮助

听起来你的意思是这样的:

Private Sub CommandButton1_Click()
      Dim lRow As Long
      lRow = 1

      Do Until Range("A" & lRow) = ""
        Select Case Range("A" & lRow)
          Case 1, 2
            Range("A" & lRow) = 10
        End Select
        lRow = lRow + 1
      Loop
End Sub

注意:我只是猜测它是A列。您需要在所有3个位置将其更改为具有所需值的列

你可以使用宏记录器给你一些代码开始。我可以记录排序功能。那部分很简单。我遇到的问题是让它在列中搜索具有指定值的所有单元格,然后更改它们。我认为我无法记录这种代码逻辑。