• 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 code koppelen aan een knop in de ribbon

Status
Niet open voor verdere reacties.

snitsel

Gebruiker
Lid geworden
12 feb 2008
Berichten
199
Beste

Ik ben al de hele dag opzoek hoe het moet, maar het is precies niet zo gemakkelijk.
Het is mij al gelukt een nieuwe Ribbon te maken met gepaste knoppen en alles wat ik maar wil, alleen zou ik graag, als ik op de knop druk dat er een vba code uitgevoerd wordt.
Ik snap niet hoe ik een vba code aan mijn button moet koppelen.

Ik heb al de hele site van ron de bruin gelezen met de bijhorende examples, maar het lukt mij echt niet. De functies die hij gebruikt bij zijn knoppen, zijn bestaande commands in Excel.

Ps, Het gaat hier dus wel om Excel 2007.

Hopelijk kan er mij iemand verder helpen. Alvast bedankt.
 
snitsel,

Ik denk dat je de code hier voor zelf moet schrijven.

Je kunt natuurlijk als hier niemand het weet een mailtje naar Ron de bruin sturen met je vraag <rondebruin@kabelfoon.nl>

Volgens mij wil hij je hier best even mee helpen.
 
snitsel,

Ik denk dat je de code hier voor zelf moet schrijven.

Je kunt natuurlijk als hier niemand het weet een mailtje naar Ron de bruin sturen met je vraag <rondebruin@kabelfoon.nl>

Volgens mij wil hij je hier best even mee helpen.

Ik heb mijn vba code wel, ik weet gewoon niet hoe ik ze moet doen werken via mijn knop.
Ik heb al eerder een mail gestuurd naar Ron zelf, maar tevergeefs krijg ik geen antwoord, daarom de vraag hier op het forum.
Toch bedankt voor de reply

@Jan
Ik zal vanmiddag eens kijken naar de door jou doorgstuurde website want zo te zien staat er een heleboel op, alvast bedankt.
Als ik de oplossing vind op de site, laat ik het weten. Zo niet, laat ik het ook weten ;)
 
snitsel,

Ik heb ook even gekeken naar de link van Jan van Asseldonk en daar werd mijn vermoeden bevestigd.

Code:
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" >
  <ribbon>
    <tabs>
      <tab id="myTab" label="My Tab">
        <group id="group1" label="Group 1">
          <button id="myButton" label="My Button"
                  imageMso="HappyFace" size="large" 
                  onAction="myButton_ClickHandler" />   [COLOR="Red"]'jouw sub[/COLOR]
        </group>
      </tab>
    </tabs>
  </ribbon>
</customUI>

jouw sub code

Code:
Sub myButton_ClickHandler(control As IRibbonControl)
MsgBox "MyButton was clicked!"
End Sub

Je zal je code er nog in moeten zetten en onActie naar de sub.routine verwijzen.
Ik weet er ook niet veel van maar dit maak ik eruit op.
 
Het zal toch niet veel ander zijn dan met de commandbars in Excel 2000/2003 ?

Code:
on error resume next
for j = 1 to commandbars(4).controls.count
  c0=commandbars(4).controls(j).onaction
next

wil je een aktie koppelen dan doe je dat met

Code:
commandbars(4).controls(5).onaction="verwijder"

daarmee wordt de macro 'verwijderen' aan knop 5 van de 4e werkbalk gekoppeld.
 
Ik heb er mij terug kunnen mee bezig houden en na veel zoeken en proberen is het mij uiteindelijk gelukt om een knop aan te maken waar een VBA code is aan gekoppeld.

Alleen heb ik nu nog 1 probleem.
Als ik een nieuw werkboek start, dan is mijn Ribbon terug weg en zie ik terug alles standaard.
Hoe moet ik dit aanpassen?

groetjes
 
snitsel,

Volgens mij is de oplossing;
Er een invoegtoepassing van maken.
 
snitsel,

Ik ben nieuwsgierig of het nog gelukt is, om er een Invoegtoepassing van te maken.
Als het gelukt is werkt het nu dan ook zoals je het wild?
 
snitsel,

Ik ben nieuwsgierig of het nog gelukt is, om er een Invoegtoepassing van te maken.
Als het gelukt is werkt het nu dan ook zoals je het wild?

Dag Hoorvan

Ik ben er gisteren nog mee bezig geweest, maar ik kan er enkel aan werken als ik wat tijd over heb hier op het werk.
Ik heb veel moeten zoeken en uit proberen, maar het ziet er naar uit dat het nu begint te werken.

Ik heb wel een probleem met de macro voor het automatisch opslaan van mijn bestand in een bepaalde map op de server met het eerst verhogende nummer. Maar daar moet ik nog verder op zoeken.

Verder heb ik ook nog een probleem:
Als ik mijn xlam bestand open met de invoegtoepassing, dan opent hij wel Excel met de ribbon, maar ik moet wel steeds nog een nieuwe werkmap openen.

En ik weet ook niet waar ik xlam bestand moet zetten zodanig als ik op het Excel icoon klik, dat mijn ribbon ook wordt geladen. Mijn ribbon werkt alleen als ik mijn bestand open en dus niet standaard in Excel.

Nu ik het snap is het helemaal niet zo moeilijk je eigen ribbon te maken, alleen is het wel al veel opzoekingswerk geweest en lezen lezen lezen.

grtz
 
snitsel,

De Invoegtoepassing.XLAM staat bij mij op de volgende plaats.
Ik heb eerst de weergave van de mappen in de verkenner onder Extra / Mapopties / Weergave / Verborgen Bestanden en Mappen weergeven het vinkje geplaatst.

Bij mij staan de Invoegtoepassingen in de C schijf;
Documents and Settings / Pc / Application data / Microsoft / Invoegtoepassingen

Als je dan Excel 2007 opent en links boven op de Office knop klikt, dan op Opties voor Excel dan op Invoegtoepassingen daarna op start onderaan en als het goed is staat hij in de lijst.
Vink hem aan en hij zal steeds als je excel opstart aanwezig zijn.

Verder heb ik ook nog een probleem:
Als ik mijn xlam bestand open met de invoegtoepassing, dan opent hij wel Excel met de ribbon, maar ik moet wel steeds nog een nieuwe werkmap openen
Dat klopt volgens mij, je Invoegtoepassing is voor elke werkmap dan beschikbaar, zo werkt het bij mij altans.
Voor de macro voor het opslaan weet ik niet de oplossing
 
snitsel,

De Invoegtoepassing.XLAM staat bij mij op de volgende plaats.
Ik heb eerst de weergave van de mappen in de verkenner onder Extra / Mapopties / Weergave / Verborgen Bestanden en Mappen weergeven het vinkje geplaatst.

Bij mij staan de Invoegtoepassingen in de C schijf;
Documents and Settings / Pc / Application data / Microsoft / Invoegtoepassingen

Als je dan Excel 2007 opent en links boven op de Office knop klikt, dan op Opties voor Excel dan op Invoegtoepassingen daarna op start onderaan en als het goed is staat hij in de lijst.
Vink hem aan en hij zal steeds als je excel opstart aanwezig zijn.


Dat klopt volgens mij, je Invoegtoepassing is voor elke werkmap dan beschikbaar, zo werkt het bij mij altans.
Voor de macro voor het opslaan weet ik niet de oplossing

Ah, dank je wel voor de snelle reactie en de oplossing.
Ik zal het zo snel als mogelijk eens controleren, alleen zal het wss vandaag niet zijn.
ivm het opslaan van de macro denk ik wel te weten wat het probleem is.
De vba code die ik normaal gebruik is gekoppeld aan een button in mijn standaard bestel formulier, en dit formulier bevindt zich ook in deze map waar hij moet tellen. Dat is wss het probleem. Mijn xlam bestand is dus niet in de bestelmap aanwezig en vandaar de foutmelding.

Ik hou je nog op de hoogte met wat ik probeer :-).
Bedankt Hoornvan!!
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan