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

2 case VBA

Status
Niet open voor verdere reacties.

nobody11

Gebruiker
Lid geworden
20 dec 2007
Berichten
552
Ik heb hier een stukje van een code die i heb gemaakt (ik weet het, dit zal ongetwijfeld korter/beter kunnen.. maar ik ben slechts een beginner)

het gaat als volgt; op een bepaald moment in mijn sub wil ik 2 voorwaarden combineren..
als de waarde van G8 kleiner is dan p*12 , dan moet de code gewoon doorgaan..
indien de waarde van G8 groter of gelijk is dan p*12 , dan moet afhankelijk van de waarde van de variabele "taal" die gedefinieerd is , een engelse al dan niet een nederlandse error komen en moet het volledige script gestopt worden. dit lukt mij nog niet..

Code:
Select Case Range("G8").Value
*hier komt code voor*



Select Case Range("G8").Value 
Case Is < p * 12
[hier moet een code staan die alles laat verder gaan vanaf punt [COLOR="red"]X[/COLOR])

Case Is >= p * 12
Select Case taal
Case "Nederlands"

MsgBox "Nederlandstalige error"[COLOR="blue"] + STOPPEN VAN DE SUB[/COLOR]

Case "English"
MsgBox "Engelstalige error"  [COLOR="blue"] + STOPPEN VAN DE SUB[/COLOR]

End Select

End Select
[COLOR="Red"]
X
*hier gaat de code verder[/COLOR]*

kan iemand mij hier uit helpen?
alvast bedankt!!
 
Laatst bewerkt:
Ik heb hier een stukje van een code die i heb gemaakt (ik weet het, dit zal ongetwijfeld korter/beter kunnen.. maar ik ben slechts een beginner)

het gaat als volgt; op een bepaald moment in mijn sub wil ik 2 voorwaarden combineren..
als de waarde van G8 kleiner is dan p*12 , dan moet de code gewoon doorgaan..
indien de waarde van G8 groter of gelijk is dan p*12 , dan moet afhankelijk van de waarde van de variabele "taal" die gedefinieerd is , een engelse al dan niet een nederlandse error komen en moet het volledige script gestopt worden. dit lukt mij nog niet..

Code:
Select Case Range("G8").Value
*hier komt code voor*



Select Case Range("G8").Value 
Case Is < p * 12
[hier moet een code staan die alles laat verder gaan vanaf punt [COLOR="red"]X[/COLOR])

Case Is >= p * 12
Select Case taal
Case "Nederlands"

MsgBox "Nederlandstalige error"[COLOR="blue"] 
[COLOR="darkorange"]Exit sub[/COLOR] 
Case "English"
MsgBox "Engelstalige error"  
[COLOR="DarkOrange"]exit sub[/COLOR]
End Select

End Select
[COLOR="Red"]
*hier gaat de code verder[/COLOR]*

kan iemand mij hier uit helpen?
alvast bedankt!!

heb de oplossing al blijkbaar :-) (zie donker oranje)
 
Code:
If Range("G8").Value >= 12*p Then
     MsgBox Iif(taal = "Nederlands","Nederlandstalige error","Engelstalige error")
End If

Wigi
 

Wigi,

ik heb nu ook deze code

Code:
Sub test()
taal = Range("A1").Value

Range("A3").value = IIf(taal = "Nederlands", "Nederlandse tekst", "Niet-nederlandse tekst")

End Sub


deze codee werkt, maar als ik bv in A1 nederlands met kleine letter zet, dan herkent hij dit niet als correct.. hoe kan ik de voorwaarde laten gelden onafgezien van de hoofdletters?

en hoe voeg ik een tweede voorwaarde toe , dus stel ik heb een variabele taal2, hoe voeg ik dan een tweede voorwaarde toe die moet gelden samen met de eerste, en als ander voorbeeld twee voorwaarden waarvan er maar 1 moet gelden... ik probeer zo de codes te begrijpen.. hopelijk kunnen julliie mij helpen :-)
tx!!
 
Laatst bewerkt:
Code:
Sub test()
taal = Range("A1").Value

Range("A3").value = IIf(UCase(taal) = "NEDERLANDS", "Nederlandse tekst", "Niet-nederlandse tekst")

End Sub

En anders de Option Compare settings voor die module aanpassen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan