Range in neues Excel Wb kopieren
#1
Hallo zusammen,

Ich schreibe gerade ein Makro, das einen bestimmten Bereich aus einer Excel-Tabelle in ein neues Excel-File schreiben soll. 

Der Bereich soll mit Hilfe des Anfangs- und Enddatums ausgelesen werden. Ich habe dafür eine Userform, in der der User den Bereich eintragen kann.


Code:
Dim AD As Date
AD = TextBoxAD.Value
Dim ED As Date
ED = TextBoxED.Value

Set NewBook = Workbooks.Add
 Workbooks("Blaa.xlsm").Worksheets("Gesamtliste").Range("H" & ? & ":H" & ?).Copy
 NewBook.Worksheets("Tabelle1").Range("A1").PasteSpecial (xlPasteValues)
 
Der Kopiervorgang an sich funktioniert. Jetzt geht es nur noch darum die Range so abzuändern das der Bereich von Anfangs- und Enddatum selektiert und kopiert wird. Wie kann ich nun die Textfelder mit den entsprechenden Tabellenzeilen aus Spalte H verknüpfen? 

PS: Die Spalte H beinhaltet nur Werte die einem Datum entsprechen (dd.mm.yyyy)

Vielen Dank für Eure Hilfe 
Gruß Patrick
Antworten Top
#2
Hallo Patrick,

z.B. so:
  Dim lngAD As Long, lngED As Long

With Workbooks("Blaa.xlsm").Worksheets("Gesamtliste")
On Error Resume Next
lngAD = Application.Match(CDbl(CDate(TextBoxAD.Value)), .Columns(8), 0)
lngED = Application.Match(CDbl(CDate(TextBoxED.Value)), .Columns(8), 0)
On Error GoTo 0
If lngAD * lngED > 0 Then
.Range("H" & lngAD & ":H" & lngED).Copy
Workbooks.Add.Worksheets(1).Range("A1").PasteSpecial xlPasteValuesAndNumberFormats
Else
MsgBox "Bitte Datumswerte überprüfen!", vbCritical
End If
End With
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Patrick S
Antworten Top
#3
Hallo Uwe,

funktioniert super, Dankeschön!

Gruß Patrick
Antworten Top


Gehe zu:


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