Verticaal zoeken in VBA mbv .Value

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • knaap37
  • Registratie: Maart 2009
  • Laatst online: 06-01-2021
Hallo,

Ik wil doormiddel van een .Value in VBA een formule in een cel plaatsen, daarvoor gebruik ik onderstaande code:

code:
1
Range("B1").Value = "VERT.ZOEKEN($A1;[bronbestand.xlsx]Blad1!$A$1:$ZZ$999;KOLOM(B:B);0)"


Dit wordt op deze manier gewoon als tekst in cel B1 ingevuld, maar ik wil het natuurlijk als formule. Daarom gebruik ik onderstaande code. Hierbij heb ik alleen het = teken toegevoegd voor VERT.ZOEKEN

code:
1
Range("B1").Value = "=VERT.ZOEKEN($A1;[bronbestand.xlsx]Blad1!$A$1:$ZZ$999;KOLOM(B:B);0)"


Maar nu geeft excel bij het uitvoeren van deze macro een error:
Fout 1004 tijdens uitvoering: Door de toepassing of door object gedefinieerde fout
Maar als ik na het uitvoeren van de eerste macro (dus de code zonder = teken) handmatig een = teken voor de geplaatste tekst zet, pakt hij de formule wel en verschijnt het getal uit de desbetreffende cel uit het bronbestand in cel B1.

Hoe kan ik dit probleem oplossen? Ik hoop dat iemand mij kan helpen.
Alvast bedankt !

Mvg

Beste antwoord (via knaap37 op 18-10-2017 11:03)


  • breew
  • Registratie: April 2014
  • Laatst online: 14:40
knaap37 schreef op dinsdag 17 oktober 2017 @ 13:57:
Dat klopt.
Maar mijn idee was om de formule d.m.v. een macro in de betreffende cel in te laten vullen, waarna Excel uiteindelijk de formule uitvoert. Ik automatiseer dus eigenlijk alleen de tekstinvoer in de cel. Aangezien mijn excel in het Nederlands is, vul ik dit in het Nederlands in.
Ik snap je gedachtengang, maar dat gaat niet werken.

probeer het eens met .FormulaLocal
code:
1
myRange.FormulaLocal  = "=SOM(mySheet!$12:$12)"

[ Voor 10% gewijzigd door breew op 17-10-2017 15:22 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • Sjeik
  • Registratie: Augustus 2001
  • Laatst online: 29-05 14:39
Volgens mij moet je formules in VBA in het Engels invullen. Je kunt hem via deze site vertalen: https://en.excel-translator.de/translator/

Was ik maar rijk en niet zo knap...


Acties:
  • 0 Henk 'm!

  • knaap37
  • Registratie: Maart 2009
  • Laatst online: 06-01-2021
Dat klopt.
Maar mijn idee was om de formule d.m.v. een macro in de betreffende cel in te laten vullen, waarna Excel uiteindelijk de formule uitvoert. Ik automatiseer dus eigenlijk alleen de tekstinvoer in de cel. Aangezien mijn excel in het Nederlands is, vul ik dit in het Nederlands in.

[ Voor 15% gewijzigd door knaap37 op 17-10-2017 14:00 ]


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • breew
  • Registratie: April 2014
  • Laatst online: 14:40
knaap37 schreef op dinsdag 17 oktober 2017 @ 13:57:
Dat klopt.
Maar mijn idee was om de formule d.m.v. een macro in de betreffende cel in te laten vullen, waarna Excel uiteindelijk de formule uitvoert. Ik automatiseer dus eigenlijk alleen de tekstinvoer in de cel. Aangezien mijn excel in het Nederlands is, vul ik dit in het Nederlands in.
Ik snap je gedachtengang, maar dat gaat niet werken.

probeer het eens met .FormulaLocal
code:
1
myRange.FormulaLocal  = "=SOM(mySheet!$12:$12)"

[ Voor 10% gewijzigd door breew op 17-10-2017 15:22 ]


Acties:
  • +1 Henk 'm!

  • knaap37
  • Registratie: Maart 2009
  • Laatst online: 06-01-2021
Bedankt, dat heeft gewerkt!
Nu doet die het :D