AW: Hallo FCS
14.07.2006 19:14:19
fcs
Hallo Carola,
da in den Zellen Formeln stehen sind die Zellen natürlich nicht leer, sondern haben ggf. den Wert "". Ich hab die Prozedur zum Überprüfen des Inhalts angepasst. Hoffe es funktioniert jetzt.
Sub DatenKopieren()
Dim wbZiel As Workbook, wbQuelle As Workbook, rngDaten1 As Range, rngDaten2 As Range
Dim Zeile As Long, QTab As Variant, ZTab As Variant, Zelle As Range, Test As Boolean
Set wbZiel = ActiveWorkbook 'Datei in die die Daten kopiert werden sollen
ZTab = 2 ' Nummer der Zieltabelle, hier kann auch ein Name angegeben werden
Set wbQuelle = ActiveWorkbook 'Datei aus der die Daten kommen
QTab = 1 ' Nummer der Zieltabelle, hier kann auch ein Name angegeben werden
Set rngDaten1 = wbQuelle.Sheets(QTab).Range("H40:H45")
Set rngDaten2 = wbQuelle.Sheets(QTab).Range("H50:H55")
'Überprüfung ob alle Zellen ausgefüllt sind
Test = True
For Each Zelle In rngDaten1
If Zelle.Value = "" Then
Test = False
Exit For
End If
Next
If Test = False Then
MsgBox "im Bereich " & rngDaten1.Address & " sind nicht alle Zellen ausgefüllt!"
Exit Sub
End If
Application.ScreenUpdating = False
With wbZiel.Sheets(ZTab)
'Nächste freie Zeile in Spalte A der Zieltabelle ermitteln
'Nachfolgend Spalte wählen in der immer Daten stehen!
Zeile = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
'1. Bereich Kopieren und Inhalte einfügen
rngDaten1.Copy
'.Cells(Zeile, "A").PasteSpecial Paste:=xlFormats, Transpose:=True 'Formate
.Cells(Zeile, "A").PasteSpecial Paste:=xlValues, Transpose:=True 'Werte
'2. Bereich Kopieren und Inhalte einfügen
rngDaten2.Copy
'.Cells(Zeile, "G").PasteSpecial Paste:=xlFormats, Transpose:=True 'Formate
.Cells(Zeile, "G").PasteSpecial Paste:=xlValues, Transpose:=True 'Werte
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
gruss Franz