Excel vba如何进行一列的逐个操作?

比如说sheet1第一列是很多数据,我希望从第一个开始,从sheet2的一列里找到相同的数据,但是不知道怎么可以让它走起来,我希望能达到的效果是从第一列第一个开始,和对照列逐一核对,找到内容相同的格子后,可以对当前行进行操作,第一列第二个同理,这样一个个下来,谢谢大佬们
希望有详细的代码(可加分)qwq,小白一头雾水中

Excel的VBA里进行一列的逐个操作,那么可以用For循环语句,首先定义一个变量,如:x,代码如下:

For x=1 to 30

查找相同数据的代码

Next x

注:1表示从第一个数据开始,30表示结束的位置,如果有60行,那么改成60即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-06-29
Excel的VBA里进行一列的逐个操作,那么可以用For循环语句,首先定义一个变量,如:x,代码如下:For x=1 to 30 查找相同数据的代码 Next x 注:1表示从第一个数据开始,30表示结束的位置,如果有60行,那么改成60即可...
第2个回答  2021-04-03
把代码写在ThisWorkbook 或模块里,默认是第1列第1行数据开始到最后一行,根据需要更改你实际的起始行列即可。
Sub 对比数据2()
ThisWorkbook.Activate
Dim shtA As Object, shtB As Object
Dim rngCLA As Range, rngCLB As Range
Set shtA = Sheets("Sheet1")
Set shtB = Sheets("Sheet2")

For Each rngCLA In Range(shtA.Cells(1, 1), shtA.Cells(shtA.Cells(Rows.Count, 1).End(xlUp).Row, 1))
For Each rngCLB In Range(shtB.Cells(1, 1), shtB.Cells(shtB.Cells(Rows.Count, 1).End(xlUp).Row, 1))
If rngCLA.Value = rngCLB.Value Then
'shta.cells(..........
'
Exit For
End If
Next
Next
Set rngCLA = Nothing
Set rngCLB = Nothing
Set shtA = Nothing
Set shtB = Nothing
End Sub
第3个回答  2022-06-29
假设A1是设置了数据有效性的单元格,辅助列在G列,要把A1的值放在G1可用下面代码: Private Sub Worksheet_Change(ByVal Target As Range)If Target.Column = 1 Then [G1] = [A1] '里面加粗的1表示第一列即A列,指设置了有效性的所在列End Sub在当前工作表名称处点右键,查看代码,然后粘贴上面代码就OK了。只要A1的值改变G1就会跟着改变,如有问题请追问。
第4个回答  2022-06-29
假设A1是设置了数据有效性的单元格,辅助列在G列,要把A1的值放在G1可用下面代码: Private Sub Worksheet_Change(ByVal Target As Range)If Target.Column = 1 Then [G1] = [A1] '里面加粗的1表示第一列即A列,指设置了有效性的所在列End Sub在当前工作表名称处点右键,查看代码,然后粘贴上面代码就OK了。只要A1的值改变G1就会跟着改变,如有问题请追问。
相似回答