Hallo Matthias,
na ja, wenn du die Spalte A ausblendest, dann findet SpecialCells(xlCellTypeVisible) nichts. Da wird ja Spalte A überprüft, ob Zellen sichtbar sind oder nicht. Da die komplette Spalte A aber ausgeblendet ist, werden keine sichtbaren Zellen gefunden und deshalb läuft der Code in einen Fehler.
Probier mal das hier:
Option Explicit
Sub Übertrag_Montagefirma()
Dim loAnz As Long, loLetzte As Long
Dim raBereich As Range, raZelle As Range
Application.ScreenUpdating = False
With Worksheets("Montagefirma")
.Range("A1:AA" & .Cells(.Rows.Count, "A").End(xlUp).Row).ClearContents
End With
With Worksheets("Terminplan")
Set raBereich = .Range("B1:B" & .Cells(.Rows.Count, "A").End(xlUp).Row)
For Each raZelle In raBereich.SpecialCells(xlCellTypeVisible)
If raZelle.Offset(, -1).Text = .Range("B7").Text Then
raZelle.EntireRow.SpecialCells(xlCellTypeVisible).Copy
loAnz = loAnz + 1
With Worksheets("Montagefirma")
loLetzte = .Cells(.Rows.Count, "A").End(xlUp).Offset(1).Row
If .Cells(1, "A") = "" Then loLetzte = 1
.Cells(loLetzte, "A").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
.Cells(loLetzte, "A").PasteSpecial Paste:=xlPasteFormats
End With
End If
Next raZelle
End With
Application.CutCopyMode = False
MsgBox "Es wurden " & loAnz & " Sätze übertragen."
Set raBereich = Nothing
End Sub
Der Code überträgt jetzt auch die Formatierungen.
Ist aber ungetestet.
Gruß Werner
|