ich habe eine Funktion, die super Spalten einfriert(Formeln durch Werte ersetzt). Wenn beispielsweise im "Datenblatt" der Monat "Januar" steht, wird in meiner Tabelle die Spalte "Januar" eingefroren.
Jetzt möchte ich aber weiterhin die jeweilige Spalte einfrieren, aber die Zeile 135 ausschließen. Es soll also alles, außer die Zeile 135 eingefroren werden.
Wie kann ich das noch einbauen?
Hier mein bisheriger Code:
Sub Datei_einfrieren()
Monat_einfrieren "Tabelle1", "Datenblatt"
End Sub
'Im Datenblatt befindet sich das Monat, dass eigefroren werden soll
Function Monat_einfrieren(Ziel As String, Quelle As String)
Dim lastrow As Long
Dim Spalte As Long, lastColumn As Long
Dim strMonat As String
Dim wsZiel As Worksheet
Set wsZiel = Worksheets(Ziel)
strMonat = Worksheets(Quelle).Range("C33")
With Worksheets(Ziel)
If MsgBox("Daten für Monat """ & strMonat & """ in Tabelenblatt """ & .Name & """ _
einfrieren?", vbQuestion + vbOKCancel, "Monatsdaten einfrieren") = vbCancel Then Exit Function
lastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column 'Monate in Zeile 9
Application.ScreenUpdating = False
For Spalte = 4 To lastColumn
If Left(.Cells(1, Spalte), Len(strMonat)) = strMonat Then 'Monate in Zeile 9
lastrow = .Cells(.Rows.Count, Spalte).End(xlUp).Row
If lastrow > 4 Then
With .Range(.Cells(10, Spalte), .Cells(.Rows.Count, Spalte).End(xlUp)) 'Zeile
.Value = .Value
End With
End If
End If
Next
Application.ScreenUpdating = True
End With
End Function
Danke!!