【发布时间】:2018-01-08 02:33:05
【问题描述】:
我是 VBA 新手,我试图在遍历给定列时显示 msgBox 中单元格的值(一个接一个),但消息框不显示值(这些不是空的或“”在工作表中)。
我的代码如下:
For i=2 To workbooks(filename).Worksheets(1).Columns(columnNumber).rows.count
MsgBox "Cell value is: " & Cells(i, columnNumber).address
MsgBox "Cell value is: " & Cells(i, columnNumber).value
Next i
问题是地址正确显示在 MsgBoxes 中,而值却没有。任何帮助将不胜感激。
【问题讨论】:
-
您确定您指的是正确的工作表吗? (无论如何,地址都是一样的,但当然值可能会有很大的不同)
-
我说的是正确的工作表,而不是正确的工作簿。 ;) 试试
Msgbox Cells(i, columnnumber).worksheet.name -
当您输入
workbooks、rows、count、address或value时,编辑器会自动将它们大写。您是如何创建此代码 sn-p 的? -
正如@Rory 所说,在
Cells(...前面尝试放置workbooks(filename).Worksheets(1).这将确保您使用msgbox 引用正确的工作表。 -
@TonyDallimore:是的,它们在编辑器中大写,这不是问题。回答你的问题:我写的(没有从我的编辑那里复制它)。我现在更正了它们