如何用VBA逐列读取Excel文件?现有代码仅支持逐行读取
实现VBA逐列读取Excel数据的修改方案
只需调整循环的遍历对象,将原来的行优先遍历改为列优先遍历即可实现逐列读取,修改后的代码如下:
On Error GoTo errhand Set ws = oBook.Sheets("Sheet1") Set rngSize = ws.UsedRange Dim col As Range ' 遍历已使用区域的每一列 For Each col In rngSize.Columns Dim cell As Range ' 遍历当前列中的每个单元格 For Each cell In col.Cells MsgBox cell.Value Next cell Next col errhand: ' 可选:添加错误处理逻辑 If Err.Number <> 0 Then MsgBox "读取出错:" & Err.Description End If
关键改动说明
- 将遍历对象从
rngSize.Rows替换为rngSize.Columns,实现从行遍历转为列遍历 - 变量名从
row改为col,使代码语义更清晰,避免混淆 - 保留原有的错误处理分支,并补充了基础的错误提示逻辑(可根据实际需求调整)
内容的提问来源于stack exchange,提问作者S.M_Emamian
相关产品推荐
相关产品推荐

