• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

VBA: Invalid Procedure call or argument

Status
Niet open voor verdere reacties.

RaymondC

Gebruiker
Lid geworden
10 mrt 2008
Berichten
561
Allen ik heb onderstaande code geerfd, maar krijg een foutmelding.

Loopt vast op: cbbMyCBB.OnAction = "ThisWorkbook.UserForm2"

Code:
Private Sub Workbook_Open()
'Create a command Bar

Dim cbrMyCB As CommandBar
Dim cbbMyCBB As CommandBarButton
On Error GoTo Workbook_Open_Err

Set cbrMyCB = Application.CommandBars.Add(Name:="Calendar", Position:=msoBarTop, MenuBar:=False, Temporary:=True)
cbrMyCB.Visible = True
Set cbbMyCBB = cbrMyCB.Controls.Add
cbbMyCBB.Style = msoButtonCaption
cbbMyCBB.Caption = "Calendar"
cbbMyCBB.Tag = "Calendar"
cbbMyCBB.OnAction = "ThisWorkbook.UserForm2"
'UserForm2.Show

Exit Sub

Workbook_Open_Err:
    MsgBox Err.Description

End Sub

Wat moet ik hier aanpasssen, zodat userform opent bij klikken op de button?
 
Maak er eens = Userform2.Show van.
 
Laatst bewerkt:
Ik denk dat de OnAction moet verwijzen naar een Sub.
In die Sub open je dan Userform2.
 
Heb ik ook geprobeerd, en onderstaand nu aangepast.
Maar resultaat blijft het zelfde.

CommandButton wordt aangemaakt, maar als ik erop klik opent de UserForm2 niet.

Code:
Private Sub Workbook_Open()
'Create a command Bar

Dim cbrMyCB As CommandBar
Dim cbbMyCBB As CommandBarButton
On Error GoTo Workbook_Open_Err

Set cbrMyCB = Application.CommandBars.Add(Name:="Calendar", Position:=msoBarTop, MenuBar:=False, Temporary:=True)
cbrMyCB.Visible = True
Set cbbMyCBB = cbrMyCB.Controls.Add
cbbMyCBB.Style = msoButtonCaption
cbbMyCBB.Caption = "Calendar"
cbbMyCBB.Tag = "Calendar"
cbbMyCBB.OnAction = "ThisWorkbook.ShowForm"

Exit Sub

Workbook_Open_Err:
    MsgBox Err.Description

End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Delete the command Bar
On Error Resume Next
    Application.CommandBars("Calendar").Delete
    ActiveWorkbook.Save

End Sub

Private Sub Showform()
'Show the Userform
UserForm2.Show

End Sub
 
Je heb niet het goede gewijzigd. OnAction = showform
 
Laatst bewerkt:
Welke versie van Excel?
Plaats dat document eens.
 
Laatst bewerkt:
Heb de fout gevonden:


Code:
Set cbrMyCB = Application.CommandBars.Add(Name:="Input Calendar", Position:=msoBarTop, MenuBar:=False, Temporary:=True)

Als Name had ik Calendar gebruikt, dit nu aangepast naar Input Calendar en het werkt, geen foutmelding meer.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan