如何通过VBA使用代码引用Sheet1中的单词?

时间:2016-07-28 14:36:12

标签: excel excel-vba vba

参考Word Photo enter image description here

我附上了我的工作簿照片,其中包含我的命令按钮。在我的代码中,我需要包含当前月份和上个月的名称,并希望代码可以在7月和6月引用。

宏代码照片

enter image description here

在上个月的部分中,我希望它在Sheet1的单元格B15和7月的Sheet1的单元格B14中引用June。

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

将范围的值直接加载到字符串变量中。以下是如何做到这一点:

在代码中替换这些行:

Sheets("MoM").Select
Range("B1").FormulaR1C1 = "Previous Month"
Range("C1").FormulaR1C1 = "Current Month"

有了这个:

With Sheets("MoM")

    Dim sPrevMon as String
    Dim sCurrMon as String

    'load value into variable
    sPrevMon = .Range("B15").Value 
    sCurrMon = .Range("B14").Value

    'write value to cell
    .Range("B1") = sCurrMon
    .Range("C1") = sPrevMon

    'use value in code
    Msgbox "Current Month is " & sCurrMon & ". Previous month was " & sPrevMon

End With

每当您需要月份名称时,只需传递sPrevMonsCurrMon

有关使用变量的更多信息,请阅读this MSDN article

答案 1 :(得分:0)

Dim curMonth as String
Dim prevMonth as String

[...]
prevMonth = ThisWorkbook.Sheets(1).Range("B15").Value
curMonth = ThisWorkbook.Sheets(1).Range("B14").Value

'implement plausibility check if needed --> String in "January", "February", ...

ThisWorkbook.Sheets(1).Range("B1").Value = curMonth
ThisWorkbook.Sheets(1).Range("C1").Value = prevMonth

[...]

每当您想在代码中引用当前或上个月时,请参考相应的变量。