目录
1. 遍历单列数据并赋值
2. 遍历整个工作表的数据区域并赋值
3. 遍历指定范围的数据并赋值
4. 遍历多列数据并赋值
5. 遍历所有工作表中的数据并赋值
注意事项:
1. 遍历单列数据并赋值
Sub UpdateColumnData()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 修改为你的工作表名称
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' 获取最后一行
Dim i As Long
For i = 1 To lastRow
ws.Cells(i, 1).Value = ws.Cells(i, 1).Value * 2 ' 例如:将 A 列的每个值乘以 2
Next i
End Sub
2. 遍历整个工作表的数据区域并赋值
Sub UpdateEntireSheetData()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 修改为你的工作表名称
Dim cell As Range
For Each cell In ws.UsedRange
If IsNumeric(cell.Value) Then
cell.Value = cell.Value + 10 ' 例如:将数值单元格的值增加 10
End If
Next cell
End Sub
3. 遍历指定范围的数据并赋值
Sub UpdateSpecificRangeData()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 修改为你的工作表名称
Dim cell As Range
For Each cell In ws.Range("A1:E10")
If Not IsEmpty(cell.Value) Then
cell.Value = UCase(cell.Value) ' 例如:将文本转换为大写
End If
Next cell
End Sub
4. 遍历多列数据并赋值
Sub UpdateMultipleColumnsData()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1") ' 修改为你的工作表名称
Dim lastRow As Long
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' 获取最后一行
Dim i As Long, j As Integer
For i = 1 To lastRow
For j = 1 To 5 ' 假设要遍历 A 到 E 列
ws.Cells(i, j).Value = ws.Cells(i, j).Value & " - 已更新" ' 例如:在每个单元格后追加文本
Next j
Next i
End Sub
5. 遍历所有工作表中的数据并赋值
Sub UpdateAllSheetsData()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
Dim cell As Range
For Each cell In ws.UsedRange
If IsNumeric(cell.Value) Then
cell.Value = cell.Value * 2 ' 例如:将数值单元格的值乘以 2
End If
Next cell
Next ws
End Sub
注意事项:
- 性能优化:对于大数据集,建议关闭屏幕更新和自动计算以提高效率
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
' ... 执行操作 ...
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
- 错误处理:添加适当的错误处理逻辑,以应对可能遇到的问题,如空单元格、非数字值等。
- 备份数据:在对实际数据进行操作之前,最好先备份原始数据,以防出现意外情况。