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

lege regel weglaten in messagebox

Status
Niet open voor verdere reacties.

mulderm

Gebruiker
Lid geworden
2 jul 2004
Berichten
167
Hallo,

Ik heb de volgende voorwaardelijke instructies:

If a = TRUE Then
melding1 = "a is buiten tolerantie"
Else
melding1 = ""
End If

If b = TRUE Then
melding2 = "b is buiten tolerantie"
Else
melding2 = ""
End If

msgbox melding1 & vbcr & melding2

Probleem is dat als bijv. a = false en b = true ik dan een lege regel in mijn messagesbox krijg met melding2 een
regel daaronder, dit vind ik geen mooi gezicht.
Ik wil juist dat alleen, in dit geval, de regel met melding2
op het scherm komt.
Wie kan mij helpen?

Groeten,

mulderm
 
if len(melding1) = 0 Then
msgbox melding2
else
msgbox melding1 & vbcr & melding2
end if
 
Wat dacht je van:

If A = True And B = True Then
melding = "a & b buiten tolerantie"
ElseIf A = True And B = False Then
melding = "b is buiten tolerantie"
ElseIf A = False And B = True Then
melding = "b is buiten tolerantie"
End If
MsgBox melding
 
Mooie oplossingen jongens.

Maar wat als ik meerdere voorwaardelijke instructies
hebt, vb variabele a t/m variabele m is melding1
t/m melding 13.
Waarvan, als een variabele false is, de melding niet op
het scherm moet komen.
Lijkt mij dat de code erg lang wordt.
Is dit met een lus te realiseren?
Ik wil alleen de melding hebben als de variabele
True is.
Ben benieuwd.

mulderm
 
dit werkt ook:

Dim data(25)
Sub TEST()
A = True
B = False
C = False
D = False
E = False
F = False
G = False
H = False
I = False
J = False
K = True
L = True
M = True
N = True
O = True
P = True
Q = True
r = True
S = True
T = True
U = False
V = True
W = True
X = True
Y = True
Z = True

data(0) = A
data(1) = B
data(2) = C
data(3) = D
data(4) = E
data(5) = F
data(6) = G
data(7) = H
data(8) = I
data(9) = J
data(10) = K
data(11) = L
data(12) = M
data(13) = N
data(14) = O
data(15) = P
data(16) = Q
data(17) = r
data(18) = S
data(19) = T
data(20) = U
data(21) = V
data(22) = W
data(23) = X
data(24) = Y
data(25) = Z

bericht = ""
For r = 0 To 25
If data(r) = True Then
If bericht = "" Then
bericht = Chr(r + 65) & " Buiten tolerantie"
Else
bericht = bericht & Chr(10) & Chr(r + 65) & " Buiten tolerantie"
End If
End If
Next r

MsgBox bericht
End Sub

Hierbij worden alle waarde eerst in een matrix gelezen en daarna met een lus gecontroleerd.

Bij de waarde van r wordt 65 opgeteld om op de tekencode van de letters te komen
 
Geweldig Hans,

Dit is precies wat ik zocht.
Het gebruik van een matrix dus, weer wat geleerd.
Hartelijk dank.

mulderm
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan