İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Excel-də sağ klik menyusundan birdən çox makroyu necə idarə etmək olar?

sağ 5 makroları dokunun

Çalışma kitabınızda bir neçə vba makroları varsa, VBA penceresini açmalısınız və kodu çalıştırmanız lazım olduğunda makroyu seçin. Bu yazıda, sol ekran görünüşü olaraq işinizi daha effektiv etmək üçün sağ klik menyusundan makroları necə idarə etmək barədə danışmaq istərdim.

VBA kodları ilə sağ klik menyudan birdən çox makroyu işləyin


VBA kodları ilə sağ klik menyudan birdən çox makroyu işləyin

Bir iş kitabçasında makro kodları sağ klik menyusundan çalıştırmak üçün aşağıdakı adımlar sizə kömək edə bilər, xahiş edirik bunu edin:

1. Aşağı deşik Alt + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

2. Sonra cüt basın BuWorkbook solda Layihə bölməni daxil edin və sonra aşağıdakı VBA kodunu boş modula kopyalayın və yapışdırın.

Private Sub Workbook_Open()
Run "LoadMacro"
End Sub
Private Sub Workbook_Activate()
Run "LoadMacro"
End Sub
Private Sub Workbook_Deactivate()
Run "ClearMacro"
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Run "ClearMacro"
ThisWorkbook.Save
End Sub

sağ 1 makroları dokunun

3. Hələ də Proqramlar üçün Microsoft Visual Basic pəncərədə basın Taxmaq > Modules, və aşağıdakı kodu bu modula yapışdırın.

Private Sub LoadMacro()
Dim xArrMenu As Variant
Dim xStrLine, xSreBtnName As String
Dim xObjCBCF, xObjCntrAll As CommandBarControl
Dim xObjCBCs As CommandBars
Dim xObjCBBtn As CommandBarButton
Dim xIntLine, xFNum As Integer
Dim xObjComponent As Object
Run "ClearMacro"
Set xObjCBCF = Application.CommandBars("Cell").Controls.Add(msoControlPopup, before:=1)
xObjCBCF.Caption = " Run Macro "
xObjCBCF.BeginGroup = False
For Each xObjComponent In ActiveWorkbook.VBProject.VBComponents
    If xObjComponent.Type = 1 Then
        For xIntLine = 1 To xObjComponent.CodeModule.CountOfLines
        xStrLine = xObjComponent.CodeModule.Lines(xIntLine, 1)
        xStrLine = Trim(xStrLine)
            If (InStr(xStrLine, "()") > 0) And (Left(xStrLine, 11) = "Private Sub" Or Left(xStrLine, 3) = "Sub") Then
            xSreBtnName = ""
            If "Private Sub" = Left(xStrLine, 11) Then
                xSreBtnName = Trim(Mid(xStrLine, 12, InStr(xStrLine, "()") - 12))
            ElseIf "Sub" = Left(xStrLine, 3) Then
               xSreBtnName = Trim(Mid(xStrLine, 4, InStr(xStrLine, "()") - 4))
            End If
            If xSreBtnName <> "" And xSreBtnName <> "RightClickReset" And xSreBtnName <> "LoadMacro" And xSreBtnName <> "ActionMacro" Then
                Set xObjCBBtn = xObjCBCF.Controls.Add
                With xObjCBBtn
                    .FaceId = 186
                    .Style = msoButtonIconAndCaption
                    .Caption = xSreBtnName
                    .OnAction = "ActionMacro"
                End With
            End If
            End If
        Next xIntLine
    End If
Next xObjComponent
End Sub
Private Sub ClearMacro()
On Error Resume Next
CommandBars("Cell").Controls(" Run Macro ").Delete
Err.Clear
CommandBars("Cell").Reset
End Sub
Private Sub ActionMacro()
On Error GoTo Err1
With Application
Run .CommandBars("Cell").Controls(1).Controls(.Caller(1)).Caption
End With
Exit Sub
Err1:
    MsgBox "Invalid"
End Sub

sağ 2 makroları dokunun

4. Kodları yapıştırdıktan sonra basın Tools > ReferencesReferences-VBAProject informasiya qutusu göstərilir və sonra yoxlayın Proqramlar üçün Microsoft Visual Basic Extensibility 5.3 seçimi Mövcud References siyahı qutusuna bax:

sağ 3 makroları dokunun

5. Sonra basın OK dialoqdan çıxmaq üçün indi bu iş kitabını kimi saxlamalısınız Excel Macro Enabled İş Kitabı formatına baxın, ekran görünüşünə baxın:

sağ 4 makroları dokunun

6. Nəhayət, kodları təsir etmək üçün iş kitabını yenidən başladın və indi bir hüceyrəni sağa vurduğunuzda, a Makroyu çalıştırın seçim sağ klik menyusuna daxil edilir və iş kitabınızdakı bütün makrolar aşağıdakı ekran görüntüsü kimi alt menyuda sadalanır:

sağ 5 makroları dokunun

7. Sonra kodu tıklayarak kodu çalıştırabilirsiniz.


Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.