• 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.

Foutmelding in macro

Status
Niet open voor verdere reacties.

janmulder85

Gebruiker
Lid geworden
11 aug 2007
Berichten
63
Hallo,

Graag zou ik een formule in een cel plaatsen door de volgende code in een macro uit te voeren:

Range("G8").Value = "=ALS(C9="";"";VERT.ZOEKEN($C9;Besteksposten!$B$8:$I355;2))"

Nu krijg ik steeds een foutmelding, en ik begrijp niet waar dit aan ligt. Want als ik namelijk de formule wijzig door bijvoorbeeld:

Range("G8").Value = "=test"

Dan lukt het prima. Komt dit misschien omdat er naar een ander blad verwezen wordt?

Mijn bedoeling is namelijk om na het wissen van de cellen de formules terug te plaatsen door deze macro uit te voeren.

Alvast bedankt!
 
Hallo Jan

Je gaat de fout in met de "" dit houd tekst in. (zie voor en achter aan de formule.)
Code:
[COLOR="Red"]"[/COLOR]=ALS(C9=[COLOR="Red"]"[/COLOR]";"";VERT.ZOEKEN($C9;Besteksposten!$B$8:$I355;2))"
Zoals je in het rood ziet staan, staat vooraan in de formule ook al "" dit is dus al een stukje tekst.
teksten samenvoegen doe je dmv het & teken
Bovendien wil je ook "" in je tekst zetten dit betekend dus dat je de "" tussen "" moet zetten

Ik hoop dat je nu nog begrijp wat ik bedoel.

Ik heb het geprobeerd maar kom er zelf ook niet uit
het zou iets moeten zijn zoals hieronder, echter deze klopt ook niet helemaal
Misschien weet iemand anders waar ik nog de fout in ga
Code:
Range("G8").Value = "=if(c9=" & """""" & ";" & """""" & ";VLOOKUP($C9;Sheet2!$B$8:$I355;2))"
 
Hi JanMulder,

Deze zou het moeten doen :

Code:
Sub MacroJanMulderHelpmij()
    Range("g8").Formula = "=IF(R[1]C3="""","""",VLOOKUP(R[1]C3,Bestekposten!R8C2:R355C9,2))"
End Sub

Je moet sowieso binnen VBA al je formules in het engels verwerken.

Joske
 
Hi JanMulder,

Deze zou het moeten doen :

Code:
Sub MacroJanMulderHelpmij()
    Range("g8").Formula = "=IF(R[1]C3="""","""",VLOOKUP(R[1]C3,Bestekposten!R8C2:R355C9,2))"
End Sub

Je moet sowieso binnen VBA al je formules in het engels verwerken.

Joske


Dankjewel Joske, dit werkt inderdaad prima!

Verder wil ik iedereen bedanken voor jullie bijdrage :thumb:
 
Graag gedaan, :)

Je mag de vraag nog op ogelost zetten.

Thanks, :thumb:

Joske
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan