我在VBA中有以下代码。以下代码的问题是范围指的是data
表格,并且一旦我在其他表格中,它就会失败。
monthname = Range("D5", Range("D5").End(xlToRight)).Cells.Count - 1
您能否请我提供一个解决方案,无论我在工作簿范围内的哪个位置,都应该从data
表中选择?
答案 0 :(得分:1)
使用
monthname = sheets("data").Range("D5", sheets("data").Range("D5").End(xlToRight)).Cells.Count - 1
顺便在这个论坛上进行一次小搜索,或谷歌会得到你这个答案。
答案 1 :(得分:0)
最好完全限定你的射程。 使用
Dim ws as Worksheet
Set ws = ActiveWorkbook.Sheets("data") ' or an alternative suitable for your case
Dim monthname as Long
monthname = ws.Range("D5", ws.Range("D5").End(xlToRight)).Cells.Count - 1
请注意,对D5的第二次引用也是合格的,否则您可能会遇到麻烦。
PS:为什么你会将月份名称作为整数?
答案 2 :(得分:0)
使用
monthname = sheet("数据")。范围(" D5",工作表("数据")。范围(" D5" ).End(xlToRight))。Cells.Count - 1 顺便在这个论坛上进行小搜索或google会得到你这个答案。