Anzeige
Archiv - Navigation
892to896
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
892to896
892to896
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Change-Code

Change-Code
03.08.2007 22:22:00
chris58
Hallo !
Ich ersuche um letzte Hilfe für meine Datei, dann wäre diese fertig zum Echteinsatz.
Folgendes Problem, das ich nicht lösen kann, da ich keine Ahnung von VAB habe. Alle Codes stammen entweder von hier, oder aus dem Internet.
Ich habe den u.a. Code in der Tabelle „Dok.Ink.“, wobei, wenn ich in Spalte J ein Datum eingebe, die Zeile in das Tabellenblatt „Neuwagen-Finanzierung“ kopiert wird. Ich habe dann noch eine Spalte I… wenn ich dort ein Datum eintrage dann wird es in das Tabellenblatt „Erledigt“ kopiert. Leider wird das mit dem Text „Datensatz wurde in Datei [Neuwagen-Finanzierung] kopiert, kommentiert. Kann man das irgendwie anders lösen, sodaß bei dieser Aktion der Text „Datensatz wurde in die Datei [Erledig] kopiert, kommentiert. Weiters sollte dann dieser Datensatz gelöscht werden, da er ja Erledigt ist.
Hier dieser Code:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
Dim sSheet As String
If Not ((Target.Column = 9 Or Target.Column = 10) And _
Target.Row > 1 And Target.Rows.Count = 1) Then GoTo leave_sub
On Error GoTo leave_sub
If IsDate(Target) Then ' Abfrage, ob Datum
sSheet = IIf(Target.Column = 9, "Erledigt", "Neuwagen-Finanzierung")
lRow = Sheets(sSheet).Range("A" & Sheets(sSheet).Rows.Count).End(xlUp).Row + 1
ActiveSheet.Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Copy
Sheets(sSheet).Cells(lRow, 1).PasteSpecial Paste:=xlPasteValues
MsgBox "Datensatz wurde in Datei [Neuwagen-Finanzierung] kopiert!", vbOKOnly +  _
vbInformation, sSheet
End If
leave_sub:
End Sub


Danke für Eure Hilfe
Chris

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Change-Code
04.08.2007 06:48:37
Beverly
Hi Chris,

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
Dim sSheet As String
If Not ((Target.Column = 9 Or Target.Column = 10) And _
Target.Row > 1 And Target.Rows.Count = 1) Then GoTo leave_sub
On Error GoTo leave_sub
If IsDate(Target) Then ' Abfrage, ob Datum
sSheet = IIf(Target.Column = 9, "Erledigt", "Neuwagen-Finanzierung")
lRow = Sheets(sSheet).Range("A" & Sheets(sSheet).Rows.Count).End(xlUp).Row + 1
If Target.Column = 9 Then
ActiveSheet.Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Cut Sheets(sSheet). _
Cells(lRow, 1)
Else
ActiveSheet.Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Copy
Sheets(sSheet).Cells(lRow, 1).PasteSpecial Paste:=xlPasteValues
End If
MsgBox "Datensatz wurde in Datei " & sSheet & " kopiert!", vbOKOnly + _
vbInformation, sSheet
End If
leave_sub:
End Sub


________________________________________

Anzeige
AW: Change-Code
04.08.2007 09:39:25
chris58
Hallo !
Danke Beverly/ Karin !
Der Code funktioniert fast einwandfrei, also es wird kopiert und geht auch bestens, nur erstens werden die Zeilenfarben aus der Datei "Dok.Ink." in die Datei "Erledigt" übernommen und die Zeile in Dok.Ink. wird nicht gelöscht sondern nur die Inhalte, leider jedoch bleiben die Zellfarben (grün in Spalte I/gelb in Spalte J beim kopieren erhalten). Kann man das noch abändern, dann wäre es perfekt.
Jedenfalls danke nochmals, würde mich freuen, wenn das auch noch klappen würde.
chris58

AW: Change-Code
04.08.2007 10:18:06
Beverly
Hi Chris,

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
Dim sSheet As String
Dim loZeile As Long
If Not ((Target.Column = 9 Or Target.Column = 10) And _
Target.Row > 1 And Target.Rows.Count = 1) Then Exit Sub
'     On Error GoTo leave_sub
If IsDate(Target) Then ' Abfrage, ob Datum
sSheet = IIf(Target.Column = 9, "Erledigt", "Neuwagen-Finanzierung")
lRow = Sheets(sSheet).Range("A" & Sheets(sSheet).Rows.Count).End(xlUp).Row + 1
loZeile = Target.Row
Application.EnableEvents = False
Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Copy
Sheets(sSheet).Cells(lRow, 1).PasteSpecial Paste:=xlPasteValues
If Target.Column = 9 Then
Cells(loZeile, 1).EntireRow.Delete shift:=xlUp
End If
Application.EnableEvents = True
MsgBox "Datensatz wurde in Datei " & sSheet & " kopiert!", vbOKOnly + _
vbInformation, sSheet
End If
' leave_sub:
End Sub


Bis später,
Karin

Anzeige
AW: Change-Code
04.08.2007 11:20:56
chris58
Hallo Karin !
Der Code funktioniert nun perfekt. Also das was ich will, nur ich hatte in dem Tabellenblatt "Neuwagen-Finanzierung" eine Automatik drinnen das das Datum der Übernahme von Dok.Ink. erfolgte, eingetragen wird.Wenn ich den Code jetzt tausche dann kommt dieses Datum "von Dok.Ink. übernommen am" nicht mehr. Habe die Datei hier reingestellt. Kannst du mir nochmals helfen.
Danke im voraus
chris58
https://www.herber.de/bbs/user/44760.xls

AW: Change-Code
04.08.2007 13:26:00
Beverly
Hi Chris,
ich nehme an, nicht nur in der Tabelle "Neuwagen-Finanzierung" sondern auch in "Erledigt" soll das Datum der Übernahme eingetragen werden?

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
Dim sSheet As String
Dim loZeile As Long
If Not ((Target.Column = 9 Or Target.Column = 10) And _
Target.Row > 1 And Target.Rows.Count = 1) Then Exit Sub
'     On Error GoTo leave_sub
If IsDate(Target) Then ' Abfrage, ob Datum
sSheet = IIf(Target.Column = 9, "Erledigt", "Neuwagen-Finanzierung")
lRow = Sheets(sSheet).Range("A" & Sheets(sSheet).Rows.Count).End(xlUp).Row + 1
loZeile = Target.Row
Application.EnableEvents = False
Range(Cells(Target.Row, 1), Cells(Target.Row, 10)).Copy
Sheets(sSheet).Cells(lRow, 1).PasteSpecial Paste:=xlPasteValues
Sheets(sSheet).Cells(lRow, 11) = Date
If Target.Column = 9 Then
Cells(loZeile, 1).EntireRow.Delete shift:=xlUp
End If
Application.EnableEvents = True
MsgBox "Datensatz wurde in Datei " & sSheet & " kopiert!", vbOKOnly + _
vbInformation, sSheet
End If
' leave_sub:
End Sub


Bis später,
Karin

Anzeige
AW: Change-Code
04.08.2007 14:11:30
chris58
Hallo Karin !
Danke, das paßt perfekt, danke das du auch das "Erledigt" in deinen code miteinbezogen hast, den hatte ich vergessen. Hätte dann wieder fragen müssen. Nun läuft das Ding so wie ICH will. Jetzt muß ich noch eine Userform machen. Werde mich da in den nächsten Wochen schlaumachen, denn auf diese Datei sollen viele User zugreifen und wenn ich diesen ALLEN erklären muß, was sie machen müssen um keine Formeln oder sonstiges zu löschen ........ naja ........
Jedenfalls danke für Deine Hilfe............ ich darf mich wieder hier melden, wenn ich mit der Userform nicht weiterkomme ? (Ich hoffe ich finde eine Beispieldatei ...... keine Ahnung wie ich das machen soll .naja .. wird schon werden .......... learning by doing *ggg
Wünsche ein schönes Wochenende
wünscht chris58

Anzeige
AW: Change-Code
04.08.2007 15:46:00
Beverly
Hi Chris,
freut mich, dass nun alles nach deinen Wünschen funktionert.
Zum Thema UserFrom findest du bestimmt eine ganze Menge im Archiv. Dennoch hier als Anregung eine kleine Beispielarbeitsmappe zum Testen.
https://www.herber.de/bbs/user/44762.xls
Bis später,
Karin

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige