簡體   English   中英

VBA Excel按鈕宏錯誤

[英]VBA Excel Button Macro Error

我以編程方式在工作表上放置了一個按鈕,它的位置很好,但是當我單擊它時,我收到一條錯誤消息:“無法運行該宏。此工作簿中的宏可能不可用,或者可能禁用了所有宏”。 我相信我已經把它設置好了,但是如果有人發現任何東西,我會在這里提供極大的贊賞。

Sub ButtonGenerator()

    Application.ScreenUpdating = False

    Dim wsCRC As Worksheet
    Set wsCRC = Worksheets("CRC")

    Dim lcolumncrc As Long
    lcolumncrc = CRC.LastColumnInCRC

    'Button Declarations
    Dim ShowHideDates As Button

    wsCRC.Buttons.Delete

    'Show/Hide Dates Button Set Up
    Dim SHDrange As Range

    Set SHDrange = wsCRC.Range(Cells(5, lcolumncrc + 2), Cells(5, lcolumncrc + 4))
    Set ShowHideDates = wsCRC.Buttons.Add(SHDrange.Left, SHDrange.Top, SHDrange.Width, SHDrange.Height)

    With ShowHideDates
        .OnAction = "wsCRC.SHDbtn"
        .Caption = "Show Hidden Date Columns"
        .Name = "ShowHideDates"
    End With

    Application.ScreenUpdating = True

End Sub

Sub SHDbtn()

    Dim wsCRC As Worksheet
    Set wsCRC = Worksheets("CRC")
    Dim ShowHideDates As Button

    Dim CurrentDateColumn As Long
    CurrentDateColumn = GetTodaysDateColumn()

    ActiveSheet.Unprotect

    If ShowHideDates.Caption = "Hide Old Date Columns" Then
        wsCRC.Range(wsCRC.Cells(5, 10), wsCRC.Cells(5, CurrentDateColumn - 6)).EntireColumn.Hidden = True
        ShowHideDates.Caption = "Show Hidden Date Columns"
    Else
        wsCRC.Range(wsCRC.Cells(5, 10), wsCRC.Cells(5, CurrentDateColumn - 6)).EntireColumn.Hidden = False
        ShowHideDates.Caption = "Hide Old Date Columns"
    End If

    ActiveSheet.Protect

End Sub

您指的是在代碼中給工作表指定的標簽,而不是工作表本身。

嘗試更改:

.OnAction = "wsCRC.SHDbtn"

.OnAction = "CRC.SHDbtn"

甚至

.OnAction = "SHDbtn"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM