Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Daten Übertragung mit Dialogfenster und Abfrage
#61
If Len(Me.ComboBox1.Value) <> 6 Then Exit Sub

Was bedeutet das, ich habe in meine Tabelle verschiedene längen von Bestellnummer 6,8,10,12?

Ich habe jetzt das If Len(Me.ComboBox1.Value) <> 6 Then Exit Sub rausgenommen und es läuft aber wenn die Combobox leer ist, dann habe ich so zusagen alle daten drine und das program stürtz jedesmal ab, wie kann ich das verhindern
Antworten Top
#62
Hallo,

ich habe mich nach deiner Beispieldatei gerichtet und da gab es nur sechsstellige Bestellnummern. Wenn es noch andere Varianten gibt, ist diese natürlich unpassend. Ich habe für die Lösung des Problems keinen Ansatz und verabschiede mich aus diesem Thread.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Pirat2015
Antworten Top
#63
Danke trotzdem für deine Unterstützung
Antworten Top
#64
Andre, kannst du eventuell helfen?

Ich habe momentan folgendes Problem: Wenn ich in die Combo Box Bestellnummer angeben, dann bekomme ich auch Daten angezeigt. Soweit alles OK.
Wenn ich aber jetzt versuche die Bestellnummer aus der Combo Box zu löschen, weil ich mich vertippt habe oder weil ich eine andere eingeben möchte, hängt sich das Makro auf und es dauert lange bis es wieder die Daten anzeigt.

Wie kann ich das verhindern:

hier ist der Code:

Code:
Private Sub ComboBox1_Change()
ListBox1.Clear
'Variablendeklarationen - Integer (%)
Dim icnt1%, icnt2%
Dim vntSpalten As Variant
Dim vntArray() As Variant
Dim lngC As Long, lngA As Long, lngB As Long
'Schleifenzaehler auf 4 setzen (Anfangszeile in Quelle)
If Len(Me.ComboBox1.Value) >= 11 Then Exit Sub
icnt1 = 18
'die Spalten, die in die Listbox kommen sollen
vntSpalten = Array(14, 21, 22, 24, 25, 29, 30, 32, 38, 39, 42, 62, 63, 64)
'Schleife solange bis in Spalte 4 eine Zelle ohne Inhalt kommt
lngC = WorksheetFunction.CountIf(Columns(38), Me.ComboBox1.Value)
If lngC > 0 Then
  ReDim vntArray(0 To lngC - 1, 0 To UBound(vntSpalten))
  Do While Cells(icnt1, 38) <> ""
    'Wenn der Zellinhalt der Auswahl entspricht, dann
    If Cells(icnt1, 38).Value = Val(Me.ComboBox1.Value) Then
      'Mit der Listbox ... (fuellen)
      For lngA = 0 To UBound(vntSpalten)
        vntArray(lngB, lngA) = Cells(icnt1, vntSpalten(lngA)).Value
      Next lngA
      lngB = lngB + 1
    'Ende Wenn der Zellinhalt der Auswahl entspricht, dann
    End If
    'Schleifenzaehler iCnt1 hochsetzen
    icnt1 = icnt1 + 1
    'Ende Schleife solange bis in Spalte 4 eine Zelle ohne Inhalt kommt
  Loop
  Me.ListBox1.List = vntArray
Else
  MsgBox "Bestellnummer nicht gefunden"
End If
End Sub
Antworten Top
#65
Hallöchen,

Du bauchst doch nur eine andere Nummer zu wählen .. Warum willst Du etwas löschen oder eingeben?
Du könntest noch die Style-Eigenschaft der Combo ändern und dann gehen nur korrekte Inhalte.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#66
Ich habe in meine Tabelle 100 Bestellnummer und ich kann doch nicht alle Bestellnummer durchschauen.
Ich bekomme einen Lieferschein, tippe die Bestellnummer in die ComboBox und bekomme die Ergebnisse, wenn ich jetzt eine andere Bestellnummer eingebe, dann muss ich doch die vorherige Bestellung löschen und wenn ich das mache, dann hängt sich die ComboBox auf.
ich muss das Komplette Makro schlissen und neu Starten, dann gehst wieder.
Antworten Top
#67
Hallöchen,

dann brauchen wir noch eine Zeile Code, welches die Eingaben prüft
Füge das am Anfang vom Combobox1 - Makro ein:

If IsError(Application.Match(Val(ComboBox1), WorksheetFunction.Transpose(ComboBox1.List), 0)) Then Exit Sub

Der Code setzt voraus, dass Deine Auswahl nur numerisch ist.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#68
Hallo Andre,

wenn ich das mache, dann habe ich keine Daten in der ListBox mehr
Antworten Top
#69
… wenn die Zahl komplett ist, bekommst Du die zugehörigen Daten.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#70
Ich verstehe es nicht, in der Tabelle welche ich gepostet habe gehts, wenn ich abe in meine Tabelle übertrage dann gehts nicht
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste