未知的VBA代码错误(在Macbook上编码,在windwos上运行)

时间:2019-05-24 12:32:45

标签: excel vba

首先,我向社区表示歉意,因为他们多次带来相同的宏。我只是无能为力。.我解决了一件事,然后另一方面(我什至认为我没有碰过)停止工作。在下面的代码中,一切都可以在Macbook上完美运行,而在我的同事Windows计算机上则没有那么多。具体来说就是:

 "ws.Range("A1") = NextMonth" 
在“其他”部分找到的

似乎无效。具有讽刺意味的是,它确实可以更早地工作,但是工作表名称(月份)使用的语言错误(另一则帖子)。出于某种原因,后一个问题得到解决,然后出现了第一个提到的问题。

我对工作表所做的唯一不可见的事情就是将A1单元格的格式更改为“ [$ -en-GB] MMMM¯¯¯”,这是为了确保“ A1”中的月份”以英语显示。

有什么建议吗?

关于亚历山大,

Sub MonthlyReport()


Dim CurrentMonth As String
Dim CurrentYear As String
Dim NextMonth As String
Dim ws As Worksheet
Dim ExtractMonth As String
Dim ExtractYear As String


Sheets(Sheets.Count).Select
Set ws = ActiveSheet

 If ws.Range("A1") = "" Then

    CurrentMonth = Application.InputBox("Please enter the month", "Report (monthly)")
    CurrentYear = Application.InputBox("Please enter the year", "Report (monthly)")

    Sheets("Template").Visible = True
    Sheets("Template").Copy After:=Sheets(Sheets.Count)
    Sheets("Template").Visible = False

    Sheets(Sheets.Count).Select
    Set ws = ActiveSheet
    ws.Range("A1") = CurrentMonth & " " & CurrentYear

    ws.Name = CurrentMonth

    ws.Range("C96") = "Average " & CurrentMonth & " " & CurrentYear


Else

    CurrentMonth = ws.Range("A1")
    NextMonth = DateAdd("m", 1, CurrentMonth)


    Sheets("Template").Visible = True
    Sheets("Template").Copy After:=Sheets(Sheets.Count)
    Sheets("Template").Visible = False

    Sheets(Sheets.Count).Select
    Set ws = ActiveSheet

    ws.Range("A1") = NextMonth

    ExtractMonth = Format(NextMonth, "mmmm")
    ExtractYear = Format(NextMonth, "yyyy")
    ws.Name = ExtractMonth

   ws.Range("C96") = "Average " & ExtractMonth & " " & ExtractYear



End If




End Sub

0 个答案:

没有答案