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.

UserForm auf Grundlage von Bestandsdaten
#21
Hi,

so, gelöst:
lösche das Makro Textbox1_Exit

Verwende stattdessen
Private Sub cdm_New_Click()
 
  'VSP
  Dim i As Long
  Dim rng As Range
  Dim lr 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
 
  With Worksheets("Stammdaten")
     With .Cells(Rows.Count, 1).End(xlUp).Offset(1, 0) '.Range("A50000").End(xlUp).Offset(1, 0)
        For i = 1 To 5
           .Cells(1, i).Value = Me.Controls("Textbox" & i).Value
        Next i
        If CheckBox1.Value = True Then
           .Cells(1, 6).Value = "ja"
        Else
           .Cells(1, 6).Value = "nein"
        End If
        .Cells(1, 7).Value = ComboBox1.Value
     End With
  End With
  Call Controls_Urzustand
End Sub

Update (versuche mal zu verstehen, wsa ich gemacht habe!):
Private Sub cmd_Update_Click()
   Dim i As Long
   With Worksheets("Stammdaten")
      For i = 2 To 5
         Suchergebnis.Offset(0, i - 1).Value = Me.Controls("Textbox" & i).Value
      Next i
      If CheckBox1.Value = True Then
         Suchergebnis.Offset(0, 5).Value = "ja"
      Else
         Suchergebnis.Offset(0, 5).Value = "nein"
      End If
      Suchergebnis.Offset(0, 7).Value = ComboBox1.Value
   End With
   Call Controls_Urzustand
End Sub
Vielleicht findest und behebst Du den Fehler, den ich im Update-Makro eingebaut habe?
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Antworten Top
#22
es klappt so weit.. @Rabe, melde mich später. DANKE!!!!!!!!!!
Antworten Top
#23
Hi,

ich würde die Userform so aufbauen, so ist es sinnvoller/logischer:
   
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Antworten Top
#24
Hallo Rabe,

doch was Punkte!

Wenn ich "Update" geht kommt der Katalogwert nicht mit! und wird auch nicht in spalte G abgespeichert sondern in H. bei einem neuen Datensatz geht der katalogwert in H.


Angehängte Dateien
.xlsb   Stammdatenverwaltung - Rabe.xlsb (Größe: 87,5 KB / Downloads: 6)
Antworten Top
#25
Hi,

(07.04.2017, 13:13)PhilippB. schrieb: Wenn ich "Update" geht kommt der Katalogwert nicht mit! und wird auch nicht in spalte G abgespeichert sondern in H. bei einem neuen Datensatz geht der katalogwert in H.

also hast Du das Makro nur verwendet und nicht versucht nachzuvollziehen. Dodgy :27: :53:

Was meinst Du, warum ich geschrieben habe:
Zitat:Vielleicht findest und behebst Du den Fehler, den ich im Update-Makro eingebaut habe?
Antworten Top
#26
(07.04.2017, 13:20)Rabe schrieb: Hi,


also hast Du das Makro nur verwendet und nicht versucht nachzuvollziehen.  Dodgy  :27:  :53:

Was meinst Du, warum mich geschrieben habe:

ich mache das später. muss jetzt los.. Ich besser mich
Antworten Top
#27
@Rabe ich finde den fehler nicht!
Antworten Top
#28
Hi,

das Makro ist ja wirklich nicht lang.

Es wird also richtig das "ja" oder "nein" in die Spalte F eingetragen und der Combobox-Wert fälschlicherweise in die Spalte H statt G
F ist richtig eingetragen, H falsch.

Jetzt vergleiche mal die beiden Zeilen:
Suchergebnis.Offset(0, 5).Value = "nein"
Suchergebnis.Offset(0, 7).Value = ComboBox1.Value

Suchergebnis steht in Spalte A
und überlege Dir, was mit Offset gemacht wird.


Wo wird welcher Wert hingeschrieben?
A plus wieviel Abstand ergibt F?
A plus wieviel Abstand ergibt G?
A plus wieviel Abstand ergibt H?
Welche Zahl muß dann geändert werden?
Antworten Top
#29
(07.04.2017, 14:06)Rabe schrieb: Hi,

das Makro ist ja wirklich nicht lang.

Es wird also richtig das "ja" oder "nein" in die Spalte F eingetragen und der Combobox-Wert fälschlicherweise in die Spalte H statt G
F ist richtig eingetragen, H falsch.

Jetzt vergleiche mal die beiden Zeilen:
Suchergebnis.Offset(0, 5).Value = "nein"
Suchergebnis.Offset(0, 7).Value = ComboBox1.Value

Suchergebnis steht in Spalte A
und überlege Dir, was mit Offset gemacht wird.


Wo wird welcher Wert hingeschrieben?
A plus wieviel Abstand ergibt F?
A plus wieviel Abstand ergibt G?
A plus wieviel Abstand ergibt H?
Welche Zahl muß dann geändert werden?
A plus wieviel Abstand ergibt F? (0, 5)
A plus wieviel Abstand ergibt G? (0, 6)
A plus wieviel Abstand ergibt H? (0, 7)

Also den Wert trägt Excel in die richtige Spalte ein, jedoch wenn ich die Daten aufrufe, fehlt die Spalte G, sprich beim suchen nach dem update!
Antworten Top
#30
Hi,

(07.04.2017, 15:36)PhilippB. schrieb: jedoch wenn ich die Daten aufrufe, fehlt die Spalte G, sprich beim suchen nach dem update!

dann mußt Du halt das Schreiben des Combobox-Eintrags in die Spalte G aus dem cmd_new in das cmd_search rüberkopieren, lass Dir doch nicht so den A.... hinterhertragen. Das steht doch alles in den Makros drin, muß nur verstanden und übertragen werden.
            Me.Controls("combobox1").Value = Suchergebnis.Offset(0, 6).Value
ich habe jetzt aber noch das Leeren der Checkbox und Combobox eingebaut:

.xlsb   Stammdatenverwaltung - Rabe V3.xlsb (Größe: 88,06 KB / Downloads: 11)
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • PhilippB.
Antworten Top


Gehe zu:


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