UserForm auf Grundlage von Bestandsdaten
#11
Hi,

(07.04.2017, 10:34)PhilippB. schrieb: 2.) wenn ich die Daten eines Artikels aufrufe und "update" übernimmt er die Daten, wenn ich Sie dann wieder aufrufe, fehlt z.B. die Anzeige des klick in der Checkbox!

ja, klar, das hast Du ja auch nicht in Deinem "update"-Makro drin, bzw. das wurde noch gar nicht überarbeitet!
An dem Makro hat außer Dir noch keiner was dran gemacht.
Top
#12
(07.04.2017, 10:53)Rabe schrieb: Hi,


ja, klar, das hast Du ja auch nicht in Deinem "update"-Makro drin, bzw. das wurde noch gar nicht überarbeitet!
An dem Makro hat außer Dir noch keiner was dran gemacht.

@Rabe, hast du da eine Idee? Komme da nicht weiter. versuche mich in vba jedoch bin ich noch am anfang.
Top
#13
Hi,

Zu Deiner Frage 1: Es darf nicht mal eine Artikelnummer komplett in einer anderen enthalten sein, dann wird eine der beiden nicht gefunden! Da ist bis jetzt noch keine Sicherung eingebaut!

Im Urzustand-Makro muß aus der 2 eine 3 gemacht werden, sonst steht die Überschrift auch in der Combobox:
Code:
     For lngZeile = 3 To .Cells(Rows.Count, 1).End(xlUp).Row
Es darf auch nur ein Modul mit gleichem Namen geben, verschiebe dieses Makro aus der UF in das allgemeine Modul und lösche das dortige!

Sortiere die Aktivierreihenfolge in der Userform sinnvoll (Textbox5, Checkbox1 und Combobox1 direkt hinter Textbox4).
Drum hatte ich Dir letztes Mal schon meine Version angehängt.

(07.04.2017, 10:58)PhilippB. schrieb: @Rabe, hast du da eine Idee?

so?
Private Sub cmd_search_Click()
  Dim i As Long
  Dim booJaNein As Boolean
 
  With Worksheets("Stammdaten")
     With .Range("A5:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
        Set Suchergebnis = .Find(TextBox1.Value, LookIn:=xlValues)
        If Not Suchergebnis Is Nothing Then
           '                MsgBox Suchergebnis.Address
           If Suchergebnis.Offset(0, 5).Value = "ja" Then
              booJaNein = True
           Else
              booJaNein = False
           End If
           Me.Controls("Checkbox1").Value = booJaNein
           For i = 2 To 5
              Me.Controls("textbox" & i).Value = Suchergebnis.Offset(0, i - 1).Value
           Next i
           cmd_Update.Enabled = True
           cmd_loeschen.Enabled = True
        Else
           MsgBox "Kein Eintrag mit der Nummer" & vbCrLf & vbCrLf & TextBox1.Value & vbCrLf & vbCrLf & "in dieser Liste vorhanden!"
           cmd_Update.Enabled = False
           cmd_loeschen.Enabled = False
        End If
     End With
  End With
End Sub

.xlsb   Stammdatenverwaltung - Rabe.xlsb (Größe: 84,67 KB / Downloads: 8)
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Top
#14
Hallo Rabe,

leider geht es noch nicht richtig! Wenn ich beim "Update" Daten ändere, werden die z.B. bei der Checkbox nicht übernommen!



ein "Fehler" in der Tabelle müsste noch bereinigt werden!

1.) Artikel-Nummern dürfen nicht doppelt eintragbar sein!

Hat noch jemand eine Idee?
Top
#15
Hi,

(07.04.2017, 12:26)PhilippB. schrieb: leider geht es noch nicht richtig! Wenn ich beim "Update" Daten ändere, werden die z.B. bei der Checkbox nicht übernommen!

ein "Fehler" in der Tabelle müsste noch bereinigt werden!

1.) Artikel-Nummern dürfen nicht doppelt eintragbar sein!

Hat noch jemand eine Idee?

Im Update habe ich auch noch nichts geändert, Du?

hier zu den doppelten Art-Nrn.:
[edit] das war nix
Top
#16
Nein,

ich habe nichts verändert.

habe die aktuelle Version mal in anhang gepackt. Also bis Spalte D geht alles, aber im jetzigen Beispiel von E bis F nicht!

Mein Ziel ist, dass ich nachher meine Bestandsdaten in Form einer Userform von mehreren Checkboxen, Dropdown auswahlfelder und eingabefelder zu erstellen.

Das mit den doppltenb Art,Nr. geht! DANKE


Angehängte Dateien
.xlsb   Stammdatenverwaltung - Rabe.xlsb (Größe: 85,52 KB / Downloads: 4)
Top
#17
Hi,

(07.04.2017, 13:08)PhilippB. schrieb: ich habe nichts verändert.

eben!
Du könntest Dir mal das cmd_new und das cmd_search hernehmen und die relevanten Sachen rausziehen für dasd cmd_update.
Da ist alles drin, was Du brauchst!

Hilfe zur Selbsthilfe!

(07.04.2017, 13:08)PhilippB. schrieb: Das mit den doppltenb Art,Nr. geht! DANKE
Hier nochmal ein neues Makro für die Doppelten, das alte funktioniert nicht richtig:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
   Dim rng As Range
   Dim lr As Long
   Dim i As Long
   Dim Such As String
   Dim Zähler As Long
   
   lr = Sheets("Stammdaten").Cells(Rows.Count, "A").End(xlUp).Row
   Such = TextBox1.Value
   Zähler = 0
   Set rng = Sheets("Stammdaten").Range("A5:A" & lr).Find(Such, LookIn:=xlValues, LookAt:=xlWhole)
   For i = 1 To lr
      If Not rng Is Nothing Then
         Zähler = Zähler + 1
      End If
   Next i
   If Zähler <> 0 Then
      MsgBox ("Artikelnummer schon vorhanden!" & vbCrLf & "Bitte eine andere eingeben!")
      TextBox1.Value = ""
      TextBox1.SetFocus
   End If
End Sub
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Top
#18
(07.04.2017, 13:16)Rabe schrieb: Hi,


eben!
Du könntest Dir mal das cmd_new und das cmd_search hernehmen und die relevanten Sachen rausziehen für dasd cmd_update.
Da ist alles drin, was Du brauchst!

Hilfe zur Selbsthilfe!


Ich versuche mich!
Top
#19
Hi,

wie Du vielleicht inzwischen gemerkt hast, gibt es bei Eingabe einer schon vorhandenen Art.Nr. zum Suchen natürlich die Fehlermeldung und Du kannst dann nicht mehr updaten.

Also muß entweder das Suchen oder das verhindern von Doppeleingaben verändert werden.
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Top
#20
versuche mich! Die doppeleingabe von Artiklenummer, dass muss verhindert werden. aufrufen und bearbeiten eines Artikels muss funktionieren
Top


Gehe zu:


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