VBA DO Loop schleife

Dieses Thema im Forum "Webmaster Hilfe / Programmierer Forum" wurde erstellt von Daniel112, 03.12.2008.

  1. #1 Daniel112, 03.12.2008
    Daniel112

    Daniel112 Benutzer

    Dabei seit:
    09.11.2005
    Beiträge:
    80
    Zustimmungen:
    0
    hi,

    ich hab folgendes problem,
    wenn ich im VBA eine do loop schleife auswerte gehts schon aber ich will q 2 ereignisse mit eine loop schleife auswerten also wenn die die msgbox fehler kommt soll er von oben wieder anfangen und wenn die msgbox fehler1 kommt soll er von oben anfangen kennt einer eine lösung dafür....

    lg daniel
     
  2. AdMan

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Weiny

    Weiny Erfahrener Benutzer

    Dabei seit:
    10.07.2007
    Beiträge:
    484
    Zustimmungen:
    0
    also ich habe jahre lang VBa gecodet und verteh nicht so richtig was du nun willst.
    Erst schriebst du von auswerten, und dann kommen auf ein mal Fehler ind Spiel.
    Bitte genauer und den schon vorhanden Code dann bin ich mir sicher, dass wir eine Lösung finden.
     
  4. #3 Daniel112, 03.12.2008
    Daniel112

    Daniel112 Benutzer

    Dabei seit:
    09.11.2005
    Beiträge:
    80
    Zustimmungen:
    0
    Also ich habe do loop schleife und ich will auswerten ob in eine inputbox eine zahl größe <5 eingeben ist wenn ja dann kommt eine msgbox und wenn eine text eingeben ist dann kommt auch eine andere msgbox

    case is <5
    fehler = Msgbox
    case "a" to "zzzzzzzzzzzzz"
    fehler1 = Msgbox

    und wenne eine von beiden angesprochen wird dann soll eine don loop schleife kommen die zur inputbox geht

    aber hier der ganze code:

    Private Sub Neu_Click()
    Do

    Dim neue As Variant

    Dim neu1 As String
    Dim neu2 As String
    Dim neu22 As String
    Dim neu3 As String
    Dim neu33 As String
    Dim neu333 As String
    Dim neu4 As String
    Dim neu44 As String
    Dim neu444 As String
    Dim neu4444 As String
    Dim neu5 As String
    Dim neu55 As String
    Dim neu555 As String
    Dim neu5555 As String
    Dim neu55555 As String
    Dim Fehler As Variant
    Dim Fehler1 As Variant


    Range("A4:G56").Font.Underline = False
    Range("A4:G56").Interior.ColorIndex = Automatic
    Range("A4:G56").Formula = ""
    Range("A4:G56").Borders.LineStyle = xlNone

    neue = InputBox("Wie viele Spalten soll die Tabelle Haben 1 oder 2 bis 5", "Neue Tabelle")
    Range("A4:G56").Font.Bold = False



    Select Case neue

    Case Is = 1 ' Auswahl 1
    neu1 = InputBox("Wie soll die Spalte Heißen", "Sie haben 1 gewählt.")
    Range("B7").Formula = neu1
    Range("B7").Font.Bold = True
    Range("B7:B56").Borders.LineStyle = xlContinuous
    Range("B7:B7").Borders.LineStyle = xlDouble
    Exit Do
    Case Is = 2 ' Auswahl 2

    neu2 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 2 gewählt! 1/2")
    Range("B7").Formula = neu2
    Range("B7").Font.Bold = True
    neu22 = InputBox("Wie soll die zweite Spalte Heißen?", "Sie haben 2 gewählt! 2/2")
    Range("C7").Formula = neu22
    Range("C7").Font.Bold = True
    Range("B7:C56").Borders.LineStyle = xlContinuous
    Range("B7:C7").Borders.LineStyle = xlDouble
    Exit Do
    Case Is = 3 ' Auswahl 3

    neu3 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 3 gewählt! 1/3")
    Range("B7").Formula = neu3
    Range("B7").Font.Bold = True
    neu33 = InputBox("Wie soll die zweite Spalte Heißen?", "Sie haben 3 gewählt! 2/3")
    Range("C7").Formula = neu33
    Range("C7").Font.Bold = True
    neu333 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 3 gewählt! 3/3")
    Range("D7").Formula = neu333
    Range("D7").Font.Bold = True
    Range("B7:D56").Borders.LineStyle = xlContinuous
    Range("B7:D7").Borders.LineStyle = xlDouble
    Exit Do
    Case Is = 4 ' Auswahl 4

    neu4 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 4 gewählt! 1/4")
    Range("B7").Formula = neu4
    Range("B7").Font.Bold = True
    neu44 = InputBox("Wie soll die zweite Spalte Heißen?", "Sie haben 4 gewählt! 2/4")
    Range("C7").Formula = neu44
    Range("C7").Font.Bold = True
    neu444 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 4 gewählt! 3/4")
    Range("D7").Formula = neu444
    Range("D7").Font.Bold = True
    neu4444 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 4 gewählt! 4/4")
    Range("E7").Formula = neu4444
    Range("E7").Font.Bold = True
    Range("B7:E56").Borders.LineStyle = xlContinuous
    Range("B7:E7").Borders.LineStyle = xlDouble

    Case Is = 5 ' Auswahl 5

    neu5 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 5 gewählt! 1/5")
    Range("B7").Formula = neu5
    Range("B7").Font.Bold = True
    neu55 = InputBox("Wie soll die zweite Spalte Heißen?", "Sie haben 5 gewählt! 2/5")
    Range("C7").Formula = neu55
    Range("C7").Font.Bold = True
    neu555 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 5 gewählt! 3/5")
    Range("D7").Formula = neu555
    Range("D7").Font.Bold = True
    neu5555 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 5 gewählt! 4/5")
    Range("E7").Formula = neu5555
    Range("E7").Font.Bold = True
    neu55555 = InputBox("Wie soll die erste Spalte Heißen?", "Sie haben 5 gewählt! 5/5")
    Range("F7").Formula = neu55555
    Range("F7").Font.Bold = True
    Range("B7:F56").Borders.LineStyle = xlContinuous
    Range("B7:F7").Borders.LineStyle = xlDouble
    Exit Do
    Case "a" To "zzzzzzzzzzzz'"
    Fehler1 = MsgBox("Man du Trottel eine Zahl kein Text!!!! ", 16, "Fehler: Was war denn da los?")
    Case Is <= 6 > 999999999999#
    Fehler = MsgBox("Sie haben einen Spalten Zahl höher 5 ausgewählt", 16, "Fehler: Was war denn da los?")

    Case Else
    Exit Do


    End Select

    denn jetzt geht die schleife nur wenn die msgbox fehler kommt aber nicht wenn die msgbox fehler1 kommt

    ich hoffe ich es ist jetzt übersichtlicher
    lg
    Loop While Fehler

    End Sub
     
  5. Weiny

    Weiny Erfahrener Benutzer

    Dabei seit:
    10.07.2007
    Beiträge:
    484
    Zustimmungen:
    0
    Dim strEingabe As String
    Dim strError As String


    Do
    strError = ""
    strEingabe = InputBox("Bitte Zahl eingen 1-5", "Zahleneingabe")
    If IsNumeric(strEingabe) = True Then
    If CInt(strEingabe) > 5 Then
    strError = "Die Zahl darf nicht höher sein als 5"
    MsgBox strError
    End If
    Else
    strError = "Sie müssen eien Zahl eingeben"
    MsgBox strError
    End If

    Loop While strError <> ""

    'hier kommt dein Code den du ausführst wenn due eingabe passt


    Bei weitem nicht perfect aber klappt halt :)
     
  6. #5 Daniel112, 03.12.2008
    Daniel112

    Daniel112 Benutzer

    Dabei seit:
    09.11.2005
    Beiträge:
    80
    Zustimmungen:
    0
    him schaut gut aus....

    also muß ich das alles mit if machen
    oder kann ich dann einfach

    select case strEingabe

    her nehmen um die andere auswertung zumachen
     
  7. Weiny

    Weiny Erfahrener Benutzer

    Dabei seit:
    10.07.2007
    Beiträge:
    484
    Zustimmungen:
    0
    deine andere auswertung kannst du mit select case darunter machen. Das oben würde ich so lassen
     
  8. #7 Daniel112, 03.12.2008
    Daniel112

    Daniel112 Benutzer

    Dabei seit:
    09.11.2005
    Beiträge:
    80
    Zustimmungen:
    0
    ah supper geht schon :)

    jetzt noch eine frage woher weiß man denn die ganzen if befehle hast du da eine list wo das drinsteht...

    ganz leiben dank
     
  9. #8 Daniel112, 03.12.2008
    Daniel112

    Daniel112 Benutzer

    Dabei seit:
    09.11.2005
    Beiträge:
    80
    Zustimmungen:
    0
    lol mir ist da gerade noch was gekommen

    bei deiner funktion da kamm nicht abrechen....
     
  10. AdMan

    Es ist generell erstmal empfehlenswert alle ggf. veralteten oder fehlerhaften Treiber zu scannen und auf neue zu aktualisieren. Hier kannst du einen Treiber-Scanner downloaden. Das erspart oftmals viel Ärger und hilft gegen diverse Probleme.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  11. Weiny

    Weiny Erfahrener Benutzer

    Dabei seit:
    10.07.2007
    Beiträge:
    484
    Zustimmungen:
    0
    häääääää?
    nicht abbrechen.
    Wann willst den abbrechen?
    einfach strg+unterbr und schon bis raus. Oder eben das richtige eingeben
     
  12. Weiny

    Weiny Erfahrener Benutzer

    Dabei seit:
    10.07.2007
    Beiträge:
    484
    Zustimmungen:
    0
    hä die befehle?
    du meinst die funtion isnummeric?

    keine ahnugn ich weis das weil ich das lange genug gemacht habe, aber einfach mal socleh fragen wie "vba ist zhal" in google dann kommt schon die richtige funktion

    Ah und damit du gleich die ersten lernst.
    IsNumeric -> Prüft ob die eingabe ein Zahl ist
    Cint("878") -> macht aus einem String einen Integer
    VBA ist in den meissten fällen so klug und konvertiert sleber, aber das ist auf alle fälle die sauberere Lösung
     
Thema: VBA DO Loop schleife
Besucher kamen mit folgenden Suchen
  1. inputbox schleife vba eingabe speichern

    ,
  2. vba schleife bis eingabe

    ,
  3. vba do loop string

    ,
  4. * * ** ** * * mit java schleifen,
  5. vba während einer schleife eingabe ermöglichen ,
  6. vba schleife und eingabe,
  7. loop befehl vba,
  8. schleifen vba möglichkeiten der eingabe,
  9. vba in for schleife eingabe,
  10. vba inputbox eingabe loop,
  11. vba schleife eingeben,
  12. vba inputbox schleife abbrechen,
  13. vba for schleife bei fehler ,
  14. do schleife abbrechen button inputbox vba,
  15. vba do loop erneut anfangen,
  16. do loop vba,
  17. vba do loop speichern,
  18. VBA Do Loop If problem,
  19. vba tastatureingabe schleife,
  20. vba inputbox texteingabe schleife,
  21. VBA Schleife so da beginnen was in inputBox steht,
  22. vba schleife für fehlermeldung,
  23. vba inputbox dateneingabe schleife,
  24. aus if schleife heraus loop verlassen vba,
  25. abbruch einer do while schleife bei fehler vba
Die Seite wird geladen...

VBA DO Loop schleife - Ähnliche Themen

  1. Probleme mit Java - If Schleife

    Probleme mit Java - If Schleife: Hallo Leute, bin gerade dabei Java zu lernen und dabei sollten wir ein Programm schreiben, was die Konvertierung primitiver Datentypen...
  2. Error: cant create any node of the requested type! What to do?

    Error: cant create any node of the requested type! What to do?: Hi Leute Ich habe heute meinen kinect sensor an den pc angeschlossen undbeim ausführen von OpenNi (schnittstelle von sensor und programmen) kommt...
  3. EXEL VBA Fragen Drucken per VBA und Actionbutton

    EXEL VBA Fragen Drucken per VBA und Actionbutton: Hallo zusammen, ich habe eine Arbeitsmappe mit mehreren Tabellenblättern. Nach dem Laden erscheint die Starttabelle. Hier sind verschiedene...
  4. vba in starbasic

    vba in starbasic: gibt es eine möglichkeit eine excel tabelle mit makros in openoffice 3.2 zu konvertieren ohne das ich alle makros neu schreiben muss. oder gibt...
  5. VBA Problem??

    VBA Problem??: Hallo, Ich bin noch totaler einsteiger in vba, deshalb hab ich mal ne frage. Ich möchte eine msgbox erhalten wenn z.B die Felder ("C5:E5") gelb...