ich hoffe auch diesmal wieder hier fündig zu werden.
Super Forum. Hat mir schon einige Male geholfen.
Zu meinem Problem:
mit dem u.g. Code in Datei1 öffne ich eine aus zu wählende Datei (variabel , hier mal Datei2), suche die nächste freie Zeile, kopiere dort ein bestimmte Zeile aus Datei1 mit den Werten rein, speichere und schließe diese wieder.
So sieht das Format aus.
Spalte | Spalte B | Spalte C | Spalte D
1234 | test | gut | schlecht
Nun soll aber vor dem einfügen in Datei2 geschaut werden, ob in Spalte A bereits der Wert aus Spalte A der zu kopierenden Zeile aus Datei1 vorhanden ist.
Wenn JA, aktualisiere alle anderen Zellen der Zeile,
Wenn NEIN, finde die nächste freie Zeile und ...wie bisher.
Der Code müsste ja vor dem Hinweis 'nächste frei Zeile suchen' eingebaut werden.
Sub export()
Dim strDatei, wks As Worksheet, wb As Workbook
Dim lastrow As Long
'Reportzeile kopieren
ActiveWorkbook.Unprotect Password:="xxx"
Worksheets("assumptions").Rows(110).Copy
'Datei auswählen und öffnen
strDatei = Application.GetOpenFilename
If strDatei False Then
Set wks = Workbooks.Open(strDatei).Sheets(1)
Else
Exit Sub
End If
'nächste freie zeile suchen
lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
'MsgBox "Lastrow is " & lastrow
Application.EnableEvents = False
Application.ScreenUpdating = False
'Daten kopieren
Cells(lastrow + 1, 1).Select
Selection.PasteSpecial Paste:=xlPasteValues
'Datei speichern und schliessen
wks.Parent.Close saveChanges:=True
Set wks = Nothing
ActiveWorkbook.Protect Password:="xxx"
End Sub