【发布时间】:2015-03-30 01:54:24
【问题描述】:
Public ws As Worksheet
Public Const Mpath As String = "H:\BankingGrp\MM Board rates\"
Dim USDON As Long, USDTN As Long, USDSN As Long, USD1W As Long, _
USD2W As Long, USD3W As Long, USD1M As Long, USD2M As Long, _
USD3M As Long, USD6M As Long, USD9M As Long, USD12M As Long
Sub Record()
Workbooks.Open Filename:=Mpath & Format(Date, "DD") & " " & _
Format(Date, "MMM") & " " & Format(Date, "YYYY") & ".xls"
Set ws = ActiveWorkbook.Worksheets("BOARD RATE")
我应该使用 Range 声明并改用“Set USDON = Range("B15")”吗?
USDON = ws.Range(“B15”).Value
USDTN = ws.Range(“D17”).Value
USDSN = ws.Range(“F19”).Value
USD1W = ws.Range(“D21”).Value
USD2W = ws.Range(“D23”).Value
USD3W = ws.Range(“D25”).Value
End Sub
【问题讨论】:
-
好吧,如果你做尝试会发生什么? Edit 让我们知道! (不要指望人们会尝试您在问题本身中提出的可能解决方案。)
-
如果它在文字赋值上失败,那是因为范围对象本身不存在或无法访问。将变量更改为
Range类型不会阻止错误。工作表是否受到保护?
标签: vba excel object variable-declaration