AW: Probier's einfach ;-) o.T.
liane
Ist aber was ganz anderes
Mit diesem Makro überprüfe ich, ob in de Spalten (B6 bis B36, F6 bis F36 jnrvz) Kommentare sind, diese werden dann gelöscht. Ich möchte aber prüfen ob in folgenden Spalten Kommentare sind die dann gelöscht werden sollen.
D17 bis 47, D69 bis 99 d120 bis 150
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) <> "P2" Then Exit Sub
Application.ScreenUpdating = False
EnableEvents = False
For n = 1 To 12
sp = (n - 1) * 4
Range(Cells(6, sp + 1), Cells(36, sp + 2)).ClearContents
Range(Cells(6, sp + 1), Cells(6, sp + 2)) = DateSerial([P2], n, 1)
letzte = 30
While Month(Cells(6, sp + 1) + letzte) <> Month(Cells(6, sp + 1))
letzte = letzte - 1
Wend
'Range(Cells(6, sp + 1), Cells(6, sp + 2)).AutoFill Destination:=Range(Cells(6, sp + 1), Cells(6 + letzte, sp + 2)), Type:=xlFillDefault
Range(Cells(6, sp + 1), Cells(6 + letzte, sp + 2)).DataSeries Rowcol:=xlColumns, Type:=xlChronological, Date:= _
xlDay, Step:=1, Trend:=False
Next n
Call Kommentar
EnableEvents = True
Application.ScreenUpdating = True
End Sub
Mit diesem makro sollen die koomentare dann reingeschrieben werden. Mir geht es nur um die Zellen bzw Spalten zuweisung.
Sub Kommentar()
On Error Resume Next 'gibt Fehler wenn kein Kommentar vorhanden
With Worksheets("FS-Planer")
Set Bereich = Application.Union(.Range("b6:b36"), .Range("f6:f36"), .Range("j6:j36"), _
.Range("n6:n36"), .Range("r6:r36"), .Range("v6:v36"), .Range("z6:z36"), .Range("Ad6:Ad36"), .Range("Ah6:Ah36"), _
.Range("Al6:Al36"), .Range("Ap6:Ap36"), .Range("At6:At36"))
Bereich.SpecialCells(xlCellTypeComments).ClearComments
For n = 100 To 134
z = 5 + Day(Worksheets("Fs-Planer").Cells(n, 1))
s = (Month(Worksheets("Fs-Planer").Cells(n, 1)) - 1) * 4 + 2
.Cells(z, s).AddComment
.Cells(z, s).Comment.Visible = False
.Cells(z, s).Comment.Text Text:=Worksheets("Fs-Planer").Cells(n, 2).Value
Next n
End With
End Sub
etwas verwirrend, aber vieleicht kannst du was mit anfangen
gruss liane