Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1680to1684
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten kopieren...

Daten kopieren...
12.03.2019 13:25:58
sigrid
Hallo zusammen,
anbei meine Musterdatei:
https://www.herber.de/bbs/user/128319.xlsm
Leider muss ich meine Idee von der letzten Erstellung ändern.
Würde mich freuen, wenn ich nochmals Unterstützung bekommen würde.
Werner war zuletzt so freundlich und hat mir ein verständliches
Makro erstellt, funktioniert einwandfrei.
Aus der "Datenbank" sollen die Daten in die Tabelle "KD-Text" eingsetzt werden.
Allerdings sollte die: RG-Nr., Nr. und nur der Name kopiert werden, daneben
das Datum und daneben der Text der Textbox19.
Sollte jetzt der Kunde schon vorhanden sein, sollte das Datum und der Text in die
nächsten spalten eingesetzt werden. (Entfall "Name" da vorhanden.
Bei einem nicht vorhandenen Namen, sollte die Rg-Nr, Nr, und der Name eingesetzt
werden, wie vorher beschrieben.
Ich hoffe das es klappt,
mfg sigrid

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten kopieren...
12.03.2019 13:45:28
Werner
Hallo Sigrid,
genau das hat doch der Code schon immer gemacht. Nur dass du jetzt, dadurch dass du beim Initialisieren deiner Userform auf das Blatt KD-Text wechselst mit ActiveSheet im falschen Blatt gesucht hast.
Private Sub CommandButton5_Click()
Dim rng As Range
Set rng = Worksheets("Datenbank").Range("B3:B65000").Find(What:=Me.TextBox2.Value, _
LookAt:=xlWhole, LookIn:=xlValues)
'Wenn Wert gefunden
If Not rng Is Nothing Then
Worksheets("KD-Text").Select
Worksheets("KD-Text").Unprotect (getStrPasswort)
Cells(rng.Row, 2) = Me.TextBox2        'für SHB Nr.
Cells(rng.Row, 3) = Me.TextBox6        'für Firmenname
'ohne Format sonst hast du Text in der Zelle und kein echtes Datum
Cells(rng.Row, Columns.Count).End(xlToLeft).Offset(0, 1) = Date
With Cells(rng.Row, Columns.Count).End(xlToLeft).Resize(, 2).Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Cells(rng.Row, Columns.Count).End(xlToLeft).Offset(0, 1) = Me.TextBox19
Unload Me
Rows(rng.Row).Select
Else
MsgBox "Wert nicht gefunden"
Me.TextBox2.SetFocus
Me.TextBox2.SelStart = 0
Me.TextBox2.SelLength = Len(Me.TextBox2)
End If
Set rng = Nothing
End Sub
Gruß Werner
Anzeige
AW: Daten kopieren...stimmt aber
12.03.2019 13:55:08
sigrid
Hallo Werner,
super !
Aber der Name wird jetzt in die Zeile kopiert, wie er in der Datenbank steht.
Wenn aber der Name in der "KD-Text noch nicht steht, sollte er ans ende angefügt werden.
Da hier alles leer ist also in Zeile 3.
mfg sigrid
AW: Daten kopieren...stimmt aber
12.03.2019 14:04:18
Werner
Hallo Sigrid,
genau diese Thematik wurde in deinem letzten Beitrag von Luschi schon angesprochen und in Frage gestellt. Ich bin da dann nicht weiter darauf eingegangen, weil ich angenommen habe, dass du das genau so willst, warum auch immer.
Jetzt sollen die Einträge dann doch, was auch logischer ist, im Zielblatt alle untereinander geschrieben werden.
Dazu muss ich den Code dann aber umschreiben - mache ich nachher.
Aber vorab noch eine Frage: Warum suchst du nach der Nr. und nicht nach der RG-Nr.? So wie das aussieht ist die RG-Nr. doch jeweils individuell genau einer Person zugewiesen. Dann wäre es doch sinnvoller die als Suchbegriff zu verwenden.
Gruß Werner
Anzeige
AW: Daten kopieren...stimmt aber
12.03.2019 14:25:00
sigrid
Hallo Werner,
erst mal vorab, DU hast recht.
Die RG Nr. ist irgendeine Rechnungs-Nr., die Nummer Spalte B ist
die Nummer der Datenbank, würde mich freuen wenn es klappt mit der
Spalte B Nummer !
Danke im Voraus,
sigrid
AW: Daten kopieren...stimmt aber
12.03.2019 14:29:31
sigrid
Hallo Werner,
erst mal vorab, DU hast recht.
Die RG Nr. ist irgendeine Rechnungs-Nr., die Nummer Spalte B ist
die Nummer der Datenbank, würde mich freuen wenn es klappt mit der
Spalte B Nummer !
Danke im Voraus,
sigrid
AW: Daten kopieren...stimmt aber
12.03.2019 14:48:09
Werner
Hallo Sigrid,
jetzt doch Suche nach der Nr. aus Spalte B?
Dann so:
Private Sub CommandButton5_Click()
Dim raFund As Range, loLetzte As Long, loSuche As Long
loSuche = CLng(Me.TextBox2)
With Worksheets("KD-Text")
If WorksheetFunction.CountIf(.Columns(2), loSuche) > 0 Then
Set raFund = .Columns(2).Find(what:=loSuche, LookIn:=xlValues, lookat:=xlWhole)
If Not raFund Is Nothing Then
.Unprotect (getStrPasswort)
.Cells(raFund.Row, 1) = CLng(Me.TextBox1)
.Cells(raFund.Row, 2) = CLng(Me.TextBox2)
.Cells(raFund.Row, 3) = Me.TextBox6
.Cells(raFund.Row, .Columns.Count).End(xlToLeft).Offset(0, 1) = Date
With .Cells(raFund.Row, .Columns.Count).End(xlToLeft).Resize(, 2) _
.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
.Cells(raFund.Row, .Columns.Count).End(xlToLeft).Offset(0, 1) = Me.TextBox19
Unload Me
.Rows(raFund.Row).Select
End If
Else
loLetzte = .Cells(.Rows.Count, 2).End(xlUp).Offset(1).Row
.Unprotect (getStrPasswort)
.Cells(loLetzte, 1) = CLng(Me.TextBox1)
.Cells(loLetzte, 2) = CLng(Me.TextBox2)
.Cells(loLetzte, 3) = Me.TextBox6
.Cells(loLetzte, .Columns.Count).End(xlToLeft).Offset(0, 1) = Date
With .Cells(loLetzte, .Columns.Count).End(xlToLeft).Resize(, 2).Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
.Cells(loLetzte, .Columns.Count).End(xlToLeft).Offset(0, 1) = Me.TextBox19
Unload Me
.Rows(loLetzte).Select
End If
End With
Set raFund = Nothing
End Sub
Gruß Werner
Anzeige
AW: Daten kopieren...stimmt aber
12.03.2019 14:58:17
sigrid
Hallo Werner,
das war mal wieder PERFEKT !!!
Tausend Dank !
mfg
sigrid
Gerne u. Danke für die Rückmeldung. o.w.T.
12.03.2019 16:51:56
Werner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige