Kan het zijn dat je bij micosoft excel iets kunt invoegen zodanig
dat als je de volgende keer dat bestand opent er een kadertje komt
met een tekst dat je zelf kunt schrijven. Hoe moet ik dat dan doen??
Ps: Ik heb het vroeger nog gekund maar ik weet niet meer hoe.
microsoft excel
Code: Selecteer alles
Private Sub Workbook_Open()
MsgBox "Sup Biach?", vbQuestion + vbOKOnly, "Bling-bling"
End Sub
Plak dit in het VB venster van je workbook (alt+F11). Selecteer een codewoord en duw op F1 om de beschrijving + argumenten te zien in excel.
- meon
- Administrator
- Berichten: 16609
- Lid geworden op: 18 feb 2003, 22:02
- Twitter: meon
- Locatie: Bree
- Uitgedeelde bedankjes: 564 keer
- Bedankt: 759 keer
- Contacteer:
Squirtle schreef:Code: Selecteer alles
Private Sub Workbook_Open()
MsgBox "Sup Biach?", vbQuestion + vbOKOnly, "Bling-bling"
End Sub
Lol, funny popup
Voor de volledigheid: je kan ook een form maken en dit laten openen in het workbook_open event. Dit gewoon voor de fancy-pants onder ons die graag eigen graphics willen tonen
Nu ja, van zodra je VB code in je excel file plaatst zal ie eerst vragen of je de macros wel wil laten uitvoeren en is de verassing er ook wel af voor wie je filetje opent.
Nu ja, van zodra je VB code in je excel file plaatst zal ie eerst vragen of je de macros wel wil laten uitvoeren en is de verassing er ook wel af voor wie je filetje opent.
Awel, open je xls, mep eens stevig op Alt+F11 om de VB editor te openen, dan plaats je dat stukje code in de module die met de workbook gelinked is (genaamd 'ThisWorkBook' in '97E).
Voor een form doe je een insert --> userform en dan is het drag & drop met controls enzo.
Doe ook een Debug --> Compile VBA project, die gaat ook je syntax en objecten/functies checken.
En de help van excel is heel degelijk voor VBA, maak er gebruik van!
Voor een form doe je een insert --> userform en dan is het drag & drop met controls enzo.
Doe ook een Debug --> Compile VBA project, die gaat ook je syntax en objecten/functies checken.
En de help van excel is heel degelijk voor VBA, maak er gebruik van!
Hier is een voorbeeldje dat ik ooit eens in Word gemaakt heb om extra knoppen enzo te plaatsen:
Dit knopje moest een form openen en achter de controls zat data vanuit een access DB en via de form moest dan geselecteerde text uit het word documentje naar die mdb geschreven worden.
Het grof van die code kan je zelf genereren door de macro recorder aan te zetten en te doen wat je wil dat de macro doet, dan neus je maar eens in de aangmaakte VBA code
Als je popups wil per worksheet:
dit plak je dan in het vba venster van de sheet waarop je de msg wil
Code: Selecteer alles
Sub autoopen()
'remove possible gui modifs remaining from previous session
CleanUpIncidentInterface
'create the incident management button
createNewIncidentToolBar
'add an item in the EDIT menu bar
AddIncidentManagementMenuItem
'make a short-key for the button
createCustomShortCutKey
'prepare jet
Initialize
frmIncidentManagment.ClearFields
'fill in comboboxes
getRequestors
'getInitialRequestors
getBuxes
getBuxNumbers
getFunctions
getProjects
getPriorities
blnHasBeenFilled = False
blnHasBeenClosed = False
End Sub
Sub createNewIncidentToolBar()
Dim cbrCommandBar As CommandBar
Dim cbcCommandBarButton As CommandBarButton
' If the command bar exits, remove it.
On Error Resume Next
Application.CommandBars("IncidentManagement").Delete
' Add the command bar to the application's CommandBars collection.
Set cbrCommandBar = Application.CommandBars.Add
cbrCommandBar.Name = "IncidentManagement"
' Add command button control to the control's
' collection of CommandBar objects.
With cbrCommandBar.Controls
Set cbcCommandBarButton = .Add(msoControlButton)
' Set properties of the command button.
With cbcCommandBarButton
.Style = msoButtonIconAndCaption
.Caption = "Capture Incident"
.FaceId = 231
.TooltipText = "Capture the selected text as a new Incident."
.OnAction = "DisplayIncidentForm"
.Tag = "Capture Incident"
End With
End With
cbrCommandBar.Visible = True
End Sub
Sub AddIncidentManagementMenuItem()
Dim cbmMenuBar As CommandBarPopup
Dim cbcMenuItem As CommandBarButton
Dim strMenuBarName As String
' Remove menu item if it exists.
On Error Resume Next
Application.CommandBars("Menu Bar").Controls("Edit").Controls("Capture Incident").Delete False
' Identify menu bar that will receive new item.
strMenuBarName = "Menu Bar"
Set cbmMenuBar = Application.CommandBars(strMenuBarName).Controls("Edit")
' Add menu item.
Set cbcMenuItem = cbmMenuBar.Controls.Add(Type:=msoControlButton, Before:=8)
' Set property values of menu item.
With cbcMenuItem
.Caption = "Capture Incident"
.OnAction = "DisplayIncidentForm"
.Tag = "Capture Incident"
.ShortcutText = "Ctrl+I"
.FaceId = 231
End With
End Sub
Sub createCustomShortCutKey()
'link CTRL-I to Incident Management button
CustomizationContext = ActiveDocument
KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyI, wdKeyControl), KeyCategory:=wdKeyCategoryMacro, Command:="DisplayIncidentForm"
End Sub
Sub DisplayIncidentForm()
If Not blnHasBeenFilled Then
'after clear or first time
blnHasBeenFilled = True
frmIncidentManagment.ClearFields
fillIncidentForm
frmIncidentManagment.Show
Else
If blnHasBeenClosed Then
blnHasBeenClosed = False
If Selection.Characters.Count >= 1 Then
frmIncidentManagment.txtIncidentDesc = Selection.Text
frmIncidentManagment.txtSolutionPropo = Empty
End If
Else
'after hide
frmIncidentManagment.Show
End If
End If
End Sub
Sub CleanUpIncidentInterface()
Dim varItem As Variant
'remove EDIT menu item
For Each varItem In Application.CommandBars("Menu Bar").Controls("Edit").Controls
If varItem.Caption = "Capture Incident" Then
varItem.Delete False
End If
Next varItem
'remove Incident Management Cmd Bar
For Each varItem In Application.CommandBars()
If varItem.Name = "IncidentManagement" Then
varItem.Delete
End If
Next varItem
'remove Ctrl-I from form
CustomizationContext = ActiveDocument
FindKey(BuildKeyCode(wdKeyI, wdKeyControl)).Disable
End Sub
Dit knopje moest een form openen en achter de controls zat data vanuit een access DB en via de form moest dan geselecteerde text uit het word documentje naar die mdb geschreven worden.
Het grof van die code kan je zelf genereren door de macro recorder aan te zetten en te doen wat je wil dat de macro doet, dan neus je maar eens in de aangmaakte VBA code
Als je popups wil per worksheet:
Code: Selecteer alles
Private Sub worksheet_activate()
MsgBox "Yo!"
End Sub
dit plak je dan in het vba venster van de sheet waarop je de msg wil
je kan dat idd via de menus zelf doen maar ik heb al voorgehad dat die extra menus dan ook in andere word documenten tevoorschijn kwamen, daarom dat ik alles via een scriptje laat gebeuren
...en ja, met al die code kan ik nu ook eens den interessante uithangen he
...en ja, met al die code kan ik nu ook eens den interessante uithangen he