Onjuist aantal argumenten

Status
Niet open voor verdere reacties.

tedjansen11

Verenigingslid
Lid geworden
8 mei 2009
Berichten
449
Hoi allemaal,


Ik heb hier een probleem met excel...
Ik ben bezig om een add-in te maken, maar ik heb alle macro's af maar als ik dan het uitprobeer dan krijg ik :

Code:
---------------------------
Microsoft Visual Basic
---------------------------
Onjuist aantal argumenten of ongeldige eigenschappentoewijzing
---------------------------
OK   Help   
---------------------------

En dan als ik op help druk dan krijg ik deze foutmelding :

Code:
Onjuist aantal argumenten of ongeldige eigenschappentoewijzing (Fout 450)
Zie ook     Bijzonderheden 

Het aantal argumenten bij een procedure moet overeenkomen met het aantal parameters in de definitie van de procedure. Voor deze fout zijn de volgende oorzaken en oplossingen mogelijk: 

Het aantal argumenten in de oproep van de procedure was niet hetzelfde als het aantal vereiste argumenten dat door de procedure werd verwacht. 
Vergelijk de argumentenlijst in de oproep met de proceduredeclaratie of de definitie. 

U hebt een index opgegeven voor een besturingselement dat geen deel uitmaakt van een besturingsmatrix. 
De indexopgave wordt als argument geïnterpreteerd, maar omdat er noch een index, noch een argument wordt verwacht, treedt de fout op. Verwijder de indexopgave of volg de procedure voor het maken van een besturingsmatrix. Stel tijdens de ontwerpperiode in het blad of venster met eigenschappen van het besturingselement de eigenschap Index in op een waarde die niet gelijk is aan nul. 

U hebt geprobeerd een waarde toe te wijzen aan een alleen-lezen eigenschap of u hebt geprobeerd een waarde toe te wijzen aan een eigenschap waarvoor geen procedure Property Let bestaat. 
Het toewijzen van een waarde aan een eigenschap is hetzelfde als het doorgeven van die waarde als argument bij de procedure Property Let van het object. Definieer de procedure Property Let op de juiste wijze. De procedure moet één argument meer hebben dan de bijbehorende procedure Property Get. Als het een alleen-lezen eigenschap betreft, kunt u aan deze eigenschap geen waarde toewijzen. 

Selecteer voor aanvullende informatie het desbetreffende item en druk op F1 (in Windows) of op HELP (op de Macintosh).

En mijn XML file ziet er zo uit :

Code:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
	<ribbon>
		<tabs>
			<tab id="customTab" label="Ted's Toolbox" insertAfterMso="TabHome">
				<group id="factuurgroep" label="Facturen">
					<button id="Factuur1" label="Verkoopfactuur" size="large" onAction="Factuur1plakken" imageMso="factuur" />
					<button id="Factuur2" label="Verkoopfactuur met voorraad" size="large" onAction="Factuur2plakken" imageMso="Factuur" />
                              <button id="Factuur3" label="Servicefactuur" size="large" onAction="Factuur3plakken" imageMso="factuur" />
				</group>
                        <group id="thuisgebruik" label="Thuisgebruik">
					<button id="huiswerkplanner" label="Huiswerkplanner" size="large" onAction="huiswerkplannerplakken" imageMso="hswrk" />
					<button id="maaltijdenplanner" label="Maaltijdenplanner" size="large" onAction="maaltijldenplannerplakken" imageMso="etenplanner" />
					<button id="voorraadlijst" label="Voorraadlijst" size="large" onAction="voorraadlijstplakken" imageMso="etenplanner" />
			     </group>
			</tab>
		</tabs>
	</ribbon>
</customUI>

Bij staat : onAction="macronaamstaathier" .
Wat doe ik fout?
 
Meestal krijg je die fout als je een sub of function aanroept zonder de juiste argumenten, wat de melding ook al aangeeft. Krijg je geen specifieke plaats waar de foutmelding vandaan komt?

als voorraadlijstplakken een functie is die een argument verwacht kan het dus misgaan. Ik heb echter weinig ervaring met custom add-ins.
 
Al die dingen zijn macro's maar als ik ze dus wil activeren dan krijg ik die foutmelding !!
Dus hoe moet ik een macro laten uitvoeren??
 
Hoe is de macro gedefinieerd? De SUB header.

voorbeeld van MS:

Code:
Sub MyMacro(ByVal control as IRibbonControl)
   MsgBox("Hello World")
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan