Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
668to672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
668to672
668to672
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Vaiable

Vaiable
16.09.2005 13:55:36
gregor
Hallo
Ich habe die Variable Höhe mit Variant deklariert, da deren Wert eine Zahl ist oder "" (kein Eintrag in Zelle). Mit der Daklaration Integer erzeugt es einen Fehler, wenn die Zelle leer ist.
Nachfolgender Befehl wird jedoch falsch ausgeführt, weil die Zahl in der Variable zB mit "15" (Variant) definiert wird:
Do While Cells(Beginn + intRow, Spalte_kleinerP20) &gt 0 _
And Cells(Beginn + intRow, Spalte_Höhe_in_cm) = Höhe (15)
intRow = intRow + 1
Perronzähler = Perronzähler + 1
If intRow = Zähler + 1 Then Exit Do
Loop
Wie kann ich das dennoch lösen?
Danke und Gruss
Gregor

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vaiable
16.09.2005 14:04:50
Leo
Hi,
Höhe = 15
Do While Cells(Beginn + intRow, Spalte_kleinerP20) &gt 0 _
And Cells(Beginn + intRow, Spalte_Höhe_in_cm) = Höhe
intRow = intRow + 1
Perronzähler = Perronzähler + 1
If intRow = Zähler + 1 Then Exit Do
Loop
mfg Leo
AW: Vaiable
16.09.2005 14:49:18
Gregor
Hallo Leo
Aber genau diese Prozedur verwende ich. Die Höhe ist variabel, deren Wert zuvor aus einer ComboBox geholt wird:
Höhe = usrLängen_Höhen.cboHöhen.Value
Deren Wert ist wie gesagt eine Zahl von 1 bis 55 oder eben leer. Damit ich auch den "leeren Wert" (kein Eintrag in der ComboBox) einlesen kann, habe ich die Variable Höhe mit Variant deklariert. Damit werden die Zahlen aber mit "25" (Gänsefüsschen" eingelesen und nicht mit 25, weshalb die Do While Anfrage als Falsch gewertet wird.
Wie löse ich dieses Problem?
Vielen Dank und Gruss
Gregor
Anzeige
AW: Vaiable
16.09.2005 14:56:50
Eule
Hi Gregor
jage mal eine Beispiel durchs Netz, dann gehts bestimmt leichter
AW: Vaiable
16.09.2005 15:37:53
Gregor
Hallo
Ich überprüfe bspweise die Zeilen 1 bis 5 Spalten 2 und 3 wie folgt:

Sub test()
Dim Perronzähler As Integer, intRow As Integer
Dim Zähler As Integer, Beginn As Integer
Dim Höhe
Beginn = 1
Zähler = 5
Höhe = UserForm1.ComboBox1.Value
Zähler1 = 0
Perronzähler = 0
intRow = 0
Do While Cells(Beginn + intRow, 2) > 0 _
And Cells(Beginn + intRow, 3) = Höhe
intRow = intRow + 1
Perronzähler = Perronzähler + 1
If intRow = Zähler + 1 Then Exit Do
Loop
If Perronzähler = Zähler Then
MsgBox Perronzähler
Else
MsgBox "Keine Übereinsitimmung"
End If
End Sub

Wie muss ich die Variable Höhe definieren? Die UserForm1.ComboBox1 enthält Werte von 1 bis 55 oder ist leer. Mit Integer erhalte ich eine Fehlermeldung, wenn die ComboBox1 keine Werte enthält. Nehme ich Variant wird die Zahl als "15" oder "10" eingelesen und kann nicht mit dem Wert Cells(Beginn + intRow, 3) verglichen werden.
Danke Gregor
Anzeige
AW: Vaiable
16.09.2005 15:43:47
Leo
Hi,
Option Explicit

Sub test()
Dim Perronzähler As Integer, intRow As Integer
Dim Zähler As Integer, Beginn As Integer
Dim Höhe As Integer
Beginn = 1
Zähler = 5
If UserForm1.ComboBox1 = "" Then
MsgBox "Box leer!"
Exit Sub
End If
Höhe = CInt(UserForm1.ComboBox1)
Zähler1 = 0
Perronzähler = 0
intRow = 0
Do While Cells(Beginn + intRow, 2) > 0 _
And Cells(Beginn + intRow, 3) = Höhe
intRow = intRow + 1
Perronzähler = Perronzähler + 1
If intRow = Zähler + 1 Then Exit Do
Loop
If Perronzähler = Zähler Then
MsgBox Perronzähler
Else
MsgBox "Keine Übereinsitimmung"
End If
End Sub

mfg Leo
Anzeige
AW: Variable
16.09.2005 16:25:37
Gregor
Leo
Ja, mit diesem If .. Then Einschub klappt es, vielen Dank. Du hast mir das Wochenende gerettet!
Gregor

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige