Home Office-Hilfe.com - Wir lösen Ihr Problem mit Microsoft Excel, Word, Outlook, PowerPoint, Access gratis Forum Impressum

  entweder-oder anweisung bei zwei ComboBoxen als Pflichtfeld
Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
im2nuts
Newbie
Newbie


Anmeldedatum: 26.04.2006
Beiträge: 12

BeitragVerfasst am: 27.04.2006, 15:00 Nach oben

große Baustelle:
hab ein UserForm, mit vielen ComboBoxen, die alle als Pflichtfelder definiert sind.
nun soll bei zwei dieser ComboBoxen eine entweder-oder Anweisung stattfinden, aber die Auswahl soll trotzdem Pflicht bleiben. also, ein Feld muss gefüllt werden.
hat jemand eine Idee wie man das realisieren könnte?
Benutzer-Profile anzeigenPrivate Nachricht senden
freaky
Moderator
Moderator


Anmeldedatum: 11.04.2006
Beiträge: 751
Wohnort: im Norden

BeitragVerfasst am: 27.04.2006, 18:00 Nach oben

Hi,

als verschachtelte Abfrage:

Code:
If ComboBox1.Value = "" Then
    If ComboBox2.Value = "" Then
        MsgBox "Eingabefehler!"
        Exit Sub
    End If
End If


So sollte es gehen...Das kannst du in jedes "Change-Ereignis" der Combobox hinterlegen.

_________________
Gruß
freaky
----------------------------------------------------------------
Windows 2000, Windows XP
Office 97, Office 2000, Office 2003 und Office 2007
_____________________________________________
Feedback nicht vergessen....
---------------------------------------------------------------
Benutzer-Profile anzeigenPrivate Nachricht senden
im2nuts
Newbie
Newbie


Anmeldedatum: 26.04.2006
Beiträge: 12

BeitragVerfasst am: 28.04.2006, 08:13 Nach oben

hi,
ich hab das ganze nun allerdings in einem Click-Ereigniss.
Geht das darin nicht?
Code:
Private Sub recorddata_Click()
Dim Zeile
                  If [ComboBox1] <> "" And [ComboBox4] <> "" And [ComboBox5] <> "" And [ComboBox6] <> "" And [ComboBox7] <> "" And [ComboBox8] <> "" And [TextBox4] <> "" And [TextBox5] <> "" And [TextBox8] <> "" And [TextBox11] <> "" And [TextBox12] <> "" And [TextBox13] <> "" And [TextBox14] <> "" And [TextBox15] <> "" And [TextBox17] <> "" And [TextBox18] <> "" And [TextBox19] <> "" And [TextBox20] <> "" And [TextBox21] <> "" And [TextBox22] <> "" And [ComboBox9] <> "" And [ComboBox10] <> "" And [ComboBox2] <> "" Then
                  If [ComboBox1] <> "" And [ComboBox4] <> "" And [ComboBox5] <> "" And [ComboBox6] <> "" And [ComboBox7] <> "" And [ComboBox8] <> "" And [TextBox4] <> "" And [TextBox5] <> "" And [TextBox8] <> "" And [TextBox11] <> "" And [TextBox12] <> "" And [TextBox13] <> "" And [TextBox14] <> "" And [TextBox15] <> "" And [TextBox17] <> "" And [TextBox18] <> "" And [TextBox19] <> "" And [TextBox20] <> "" And [TextBox21] <> "" And [TextBox22] <> "" And [ComboBox9] <> "" And [ComboBox10] <> "" And [ComboBox3] <> "" Then
           Worksheets("Quotation").Unprotect
         Zeile = Worksheets("Quotation").Cells(Rows.Count, 1).SpecialCells(xlLastCell).Row + 1

                                 With RFQ
                                          ' Daten aus steuerelementen in Tabelle eintragen......
                                 End With
        unload RFQ
          Else
          MsgBox "Please fill all fields marked with * "
       Exit Sub
     End If
   End If
End Sub


wenn ich nun Daten in ComboBox2 (und natürlich alle anderen Felder) auswähle, krieg ich meine MsgBox.
wenn ich Daten in ComboBox 3 auswähle passiert garnix (also: Script geht dann an irgendeiner Stelle nicht weiter)
Benutzer-Profile anzeigenPrivate Nachricht senden
freaky
Moderator
Moderator


Anmeldedatum: 11.04.2006
Beiträge: 751
Wohnort: im Norden

BeitragVerfasst am: 28.04.2006, 09:03 Nach oben

Hi,

so richtig wieß ich bei diesem Code nciht, was Du erreichen willst. Denn bei Dir bricht er ja nur dann ab, wenn wirklich alle Felder nicht ausgefüllt sind. Sollte z.B. nur Textbox5 nciht ausgefüllt sein - alles andere aber schon - dann läuft er einfach so durch.

Soll das so sein? Denn normalerweise will man ja die Pflichtfelder ausgefüllt haben - und zwar alle Pflichtfelder. Wenn nur eins davon leer ist soll er den Code mit einem Hinweis abbrechen.
Das dürfte Dein Code so nicht machen - ist das gewollt?

_________________
Gruß
freaky
----------------------------------------------------------------
Windows 2000, Windows XP
Office 97, Office 2000, Office 2003 und Office 2007
_____________________________________________
Feedback nicht vergessen....
---------------------------------------------------------------
Benutzer-Profile anzeigenPrivate Nachricht senden
im2nuts
Newbie
Newbie


Anmeldedatum: 26.04.2006
Beiträge: 12

BeitragVerfasst am: 28.04.2006, 09:14 Nach oben

also vorher sah der Code so aus:
Code:
Private Sub recorddata_Click()
Dim Zeile
       If [ComboBox1] <> "" And [ComboBox4] <> "" And [ComboBox5] <> "" And [ComboBox6] <> "" And [ComboBox7] <> "" And [ComboBox8] <> "" And [TextBox4] <> "" And [TextBox5] <> "" And [TextBox8] <> "" And [TextBox11] <> "" And [TextBox12] <> "" And [TextBox13] <> "" And [TextBox14] <> "" And [TextBox15] <> "" And [TextBox17] <> "" And [TextBox18] <> "" And [TextBox19] <> "" And [TextBox20] <> "" And [TextBox21] <> "" And [TextBox22] <> "" And [ComboBox9] <> "" And [ComboBox10] <> "" And [ComboBox2] <> "" And [ComboBox3] <> "" Then
         
           Worksheets("Quotation").Unprotect
         Zeile = Worksheets("Quotation").Cells(Rows.Count, 1).SpecialCells(xlLastCell).Row + 1

         With RFQ
'daten aus Steuerelementen in Tabelle eintragen 
   
       End With
        unload RFQ
          Else
          MsgBox "Please fill all fields marked with * "
     
   End If
End Sub


da hat das auch so funktioniert, wie es sollte. Also wenn eines der Felder nicht gefüllt war, kam die msgbox.
nun wollte ich ja einfach nur erreichen, dass alle Felder und ComboBox2,
oder alle Felder und Combobox3 gefüllt sein müssen.
Benutzer-Profile anzeigenPrivate Nachricht senden
freaky
Moderator
Moderator


Anmeldedatum: 11.04.2006
Beiträge: 751
Wohnort: im Norden

BeitragVerfasst am: 28.04.2006, 09:37 Nach oben

Hi,

sorry - war eben mein Fehler .... wegen der "<>"..

Versuch es doch mal so und bau meinen Code praktisch direkt in Deine Abfrage ein (aus dem 2. posting...) - also nach der If-Abfrage bevor diese Zeile kommt:


Worksheets("Quotation").Unprotect


Also schematisch dann so:

Code:
If DeineFelder <> "" ... Then
   If ComboBox1.Value = "" Then
     If ComboBox2.Value = "" Then
        MsgBox "Deine Fehlermeldung!" ..das 1. Mal
        Exit Sub
     End If
   End If
 ....... hier Dein Code...
Else

..... Deine Abruchmeldung, die da steht das 2. Mal

End If


Dann sollte es doch auch gehen....

Bei so vielen Abfragen "brennen" ja schon die Augen.... Very Happy und man verliert schnell die Übersicht.

Wäre da nicht vielleicht eine Schleifenbildung druch alle Steuerelemente der Userform sinnvoll? Aber wenns läuft....

_________________
Gruß
freaky
----------------------------------------------------------------
Windows 2000, Windows XP
Office 97, Office 2000, Office 2003 und Office 2007
_____________________________________________
Feedback nicht vergessen....
---------------------------------------------------------------
Benutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen


Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge Suchabfrage mit zwei Kriterien über m... mister.monk Microsoft Excel Hilfe 0 05.12.2008, 14:53 Letzten Beitrag anzeigen
Keine neuen Beiträge Probleme beim Druck von zwei A5 Seite... bigi01 Microsoft Word Hilfe 0 30.11.2008, 10:53 Letzten Beitrag anzeigen
Keine neuen Beiträge Werte aus zwei Tabellen zusammenführen bettenjagd Microsoft Excel Hilfe 1 24.11.2008, 10:58 Letzten Beitrag anzeigen
Keine neuen Beiträge Zeile suchen, wenn gefunden zwei Dati... cyRus-tC Microsoft Excel Hilfe 2 22.11.2008, 16:11 Letzten Beitrag anzeigen
Keine neuen Beiträge Zählen wenn mit oder funktion ASchmelzer Microsoft Excel Hilfe 5 20.11.2008, 11:46 Letzten Beitrag anzeigen


 Gehe zu:   



Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen

Haftungsausschluss/Disclaimer


SMS kostenlos versenden | Battle-Dream | Tuning Forum | Join the YoungGeneration | krankenversicherungsvergleich | Kalorienarme Rezepte!
Versicherungsvergleich | Bürobedarf | Papier | Betten

Ranking-Hits



Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Alle Zeiten sind GMT + 1 Stunde
Deutsche Übersetzung von phpBB.de