Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Dringend Hilfe bei einem VBA-Code
#1
Hallo zusammen,

hänge hier bei einem Code fest, der für einige sicherlich sehr einfach ist.

Dieser Code steckt in der Mappe, die ich hier beigefügt habe.

.xlsm   Packmengen.xlsm (Größe: 161,79 KB / Downloads: 5)


Ich habe hier im Forum diesen für eine andere Maske bekommen und dachte mir, ich kann ihn etwas umbauen, für meine neue Maske.
Aber ich begreife dieses VBA immer noch nicht.

In meiner Mappe sind 2 Blätter aus meiner Ursprungmaske.

Im ersten rufe ich die Maske "Menge auf Palette" auf.
Mit dieser Maske möchte ich in der Combobox einen Artikel auswählen und nach dem auswählen sollen mir die TextBoxen gefüllt werden.
Wenn alles gefüllt und sichtbar ist, möchte ich auch die Möglichkeit haben, Eintragungen in den TextBoxen zu machen und diese dann im Blatt "Artikelmenge_Palette" auch abspeichern können.
Ich habe im Blatt  "Artikelmenge_Palette"  ein paar Einträge zur Ansicht gemacht. Ein paar Zellen sind nur leer.

Im Code für die Maske habe ich es bis jetzt noch nicht geschafft, mir überhaut schon einmal in der Combobox die Artikel anzeigen zu lassen. Sad

Vielleicht kann mir jemand Schritt für Schritt erklären, wie ich das machen muss?

Grüße Mike
to top
#2
Hallo,

ich habe noch ein wenig ausprobiert.
Bekomme jetzt endlich die Combobox in der Maske gefüllt, bin mir aber nicht sicher, ob das alles so richtig ist, was ich dort zusammengestrickt habe. Wink

Vielleicht schaut sich jemand das an und kann mir sagen, ob ich den Code so lassen kann?

Das gute ist, das ich in der Combobox sogar die erste Zahl oder Buchstaben eingeben kann und er springt schon ziemlich nah dabei zum gewünschten Artikel.

Anbei noch einmal meine Mappe mit meinem Code-Versuch.

.xlsm   Packmengen.xlsm (Größe: 162,83 KB / Downloads: 4)
Grüße an alle Interessierte.

Mike
to top
#3
Hallo Mike,

das sieht erst mal ok aus.
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#4
(24.04.2015, 17:54)schauan schrieb: Hallo Mike,

das sieht erst mal ok aus.

Hallo Schauan,

danke....da bin ich beruhigt.
Habe schon einiges ausprobiert und eben endlich mal etwas hinbekommen. Smile

Jetzt muss ich nur noch die Listboxen gefüllt kriegen. Wink

Aber erst muss ich was einkaufen gehen.

Gruß Mike
to top
#5
Hallo Mike,

Code noch ziemlich fehlerbehafter aber teste mal

Code:
Private Sub ComboBox1_Change()
   Dim lngC As Long
  
   If ComboBox1.ListIndex = 0 Then Exit Sub
   lngC = ComboBox1.ListIndex + 1
   With Worksheets("Artikelmenge_Palette")
      TextBox1.Value = .Cells(lngC, 2).Value
      TextBox2.Value = .Cells(lngC, 3).Value
      TextBox3.Value = .Cells(lngC, 4).Value
      TextBox4.Value = .Cells(lngC, 5).Value
      TextBox5.Value = .Cells(lngC, 6).Value
   End With
End Sub

Private Sub CommandButton1_Click()
   Dim lngC As Long
  
   lngC = ComboBox1.ListIndex + 1
   With Worksheets("Artikelmenge_Palette")
      .Cells(lngC, 2).Value = TextBox1.Value
      If IsNumeric(TextBox2.Value) Then .Cells(lngC, 3).Value = CDbl(TextBox2.Value)
      If IsNumeric(TextBox3.Value) Then .Cells(lngC, 4).Value = CInt(TextBox3.Value)
      If IsNumeric(TextBox4.Value) Then .Cells(lngC, 5).Value = CDbl(TextBox4.Value)
      If IsNumeric(TextBox5.Value) Then .Cells(lngC, 6).Value = CDbl(TextBox5.Value)
   End With
End Sub
Gruß Stefan
Win 7 / Office 2007
to top
#6
Artikelmenge_Palette
Hallo Steffl,

habe deinen Code eingefügt.
TextBoxen werden gefüllt doch abspeichern, da fehlt im Blatt "Artikelmenge_Palette" immer die Spalte E, das Palettenmaß.

Der erste Zeile von A2 bis F2 hat er vollständig gefüllt beim drücken in der Maske auf speichern,
alle neuen Zeilen, lässt er die Spalte E leer.

Habe mir deinen Code angesehen.
Diese Zeile fehlte bei dir, diese habe ich eingefügt, doch damit ging es auch nicht.

If IsNumeric(TextBox1.Value) Then .Cells(lngC, 2).Value = CDbl(TextBox1.Value)

Grüße Mike

Code:
Private Sub ComboBox1_Change()
  Dim lngC As Long
 
  If ComboBox1.ListIndex = 0 Then Exit Sub
  lngC = ComboBox1.ListIndex + 1
  With Worksheets("Artikelmenge_Palette")
     TextBox1.Value = .Cells(lngC, 2).Value
     TextBox2.Value = .Cells(lngC, 3).Value
     TextBox3.Value = .Cells(lngC, 4).Value
     TextBox4.Value = .Cells(lngC, 5).Value
     TextBox5.Value = .Cells(lngC, 6).Value
  End With
End Sub

Private Sub CommandButton1_Click()
  Dim lngC As Long
 
  lngC = ComboBox1.ListIndex + 1
  With Worksheets("Artikelmenge_Palette")
     .Cells(lngC, 2).Value = TextBox1.Value
     If IsNumeric(TextBox1.Value) Then .Cells(lngC, 2).Value = CDbl(TextBox1.Value)
     If IsNumeric(TextBox2.Value) Then .Cells(lngC, 3).Value = CDbl(TextBox2.Value)
     If IsNumeric(TextBox3.Value) Then .Cells(lngC, 4).Value = CInt(TextBox3.Value)
     If IsNumeric(TextBox4.Value) Then .Cells(lngC, 5).Value = CDbl(TextBox4.Value)
     If IsNumeric(TextBox5.Value) Then .Cells(lngC, 6).Value = CDbl(TextBox5.Value)
  End With
End Sub
to top
#7
Hallo Mike,

ich habe jetzt keine Zeit mehr, ich konnte aber nicht feststellen das die Spalte E nicht gefüllt wird. Deine Ergänzung kann nicht gehen, weil nach einem numerischen Wert geprüft wird und Text ist das eindeutig nicht.
Gruß Stefan
Win 7 / Office 2007
to top
#8
Ok.

dann kann die Zeile ja wieder raus.

Aber ich habe es jetzt  20mal ausprobiert.....in Spalte E wird nichts übernmmen?


.xlsm   Packmengen.xlsm (Größe: 163,09 KB / Downloads: 4)

Gruß Mike
to top
#9
Hallo Mike,

Arbeitsblatt mit dem Namen 'Artikelmenge_Palette'
 ABCDEF
1Artikel-Nr.Abmessungen Karton Länge - Breite - HöheGewicht KartonMenge auf PalettePalettenmaßGesamtgewicht in Kg
22804.103252 x 17 x 13cm1,21121,21 x 1,01 x 0,15cm34,50
32804.1032-140 x 40 x 60cm3,5045 200,00
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg

da habe ich mich durch deine Beispieldatei vom Freitag verwirren lassen und gedacht in Spalte E kommen nur Zahlen vor. Falls beides gehen soll, kannst Du es mal so versuchen.

Code:
If IsNumeric(TextBox4.Value) Then .Cells(lngC, 5).Value = CDbl(TextBox4.Value) Else .Cells(lngC, 5).Value = TextBox4.Value
Gruß Stefan
Win 7 / Office 2007
to top
#10
Hallo Stefan,


OK.....ich kann mich ja auch besser ausdrücken....das muss ich noch lernen. Wink
Ich probiere die Zeile aus, sobald ich zu Hause bin.

Wenn es gehen sollte, brauch e ich nur noch den Code, für den Neu-Button, da ich die Liste ja mit Artikeln auch mal erweitern möchte.

Grüße Mike
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Hilfe beim Code "Schleife von bis" michel34497 2 67 16.11.2016, 17:55
Letzter Beitrag: michel34497
  Dringend! Mauszeiger Hilfen Excel HubN 13 202 28.10.2016, 18:22
Letzter Beitrag: RPP63
  DRINGEND zusammenzählen aller Produkte felix1232 8 92 26.10.2016, 22:21
Letzter Beitrag: IchBinIch
Sad Straße mit Hsnr. einem Code und Bereich zuweisen lycom87 11 465 06.09.2016, 17:01
Letzter Beitrag: lycom87
  Benötige dringend Hilfe / wenn Formel Datum LiRo 2 198 23.08.2016, 09:24
Letzter Beitrag: LiRo
  Brauche Hilfe bei einem Excel Makro Cyprezz 2 393 02.04.2016, 10:56
Letzter Beitrag: RPP63
Exclamation Simulation mit Excel? Brauche dringend Hilfe! paulus 3 683 15.03.2016, 12:43
Letzter Beitrag: radagast
  Alle Fundstellen in einem String in einem neuen String ausgeben Schülerin 22 2.059 11.03.2016, 13:36
Letzter Beitrag: sotaros
  Hallo, bitte um Hilfe im Code Andy_007 2 332 12.01.2016, 08:07
Letzter Beitrag: Andy_007
  Hilfe bei Code zum speichern ins nächste Arbeitsblatt Mike4711 12 1.919 01.05.2015, 11:25
Letzter Beitrag: Steffl

Gehe zu:


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