Post by Claus BuschHi Georg,
habe nochmal eine Frage zu dem Makro. Dein Makro l�scht den Bereich ab der ersten freien Zelle in A bis D 126. Ich habe nun das Makro nur auf den neuen Bereich D 149 erweitert und jetzt fr�gt mich das Makro, ob der Bereich von A 149 bis D 149 gel�scht werden soll! Wieso �ndert sich hier der Bereich?
Das Makro soll eigentlich ab der ersten freien Zelle in A bis zu dem Bereich D 149 alle Inhalte l�schen!
probiere es mit folgendem Makro. Du musst nichts mehr anpassen, der
Sub MA_l�schen()
Dim Start As Long, Ende As Long, i As Long
Dim Warnung As Integer
Dim arrRows(3) As Variant
For i = 1 To 4
arrRows(i - 1) = Cells(Rows.Count, i).End(xlUp).Row
Next
Start = arrRows(0) + 1
Ende = WorksheetFunction.Max(arrRows)
If Ende <= Start Then Exit Sub
Warnung = MsgBox("Soll der Bereich A" & Start & _
" bis D" & Ende & " wirklich gel�scht werden?", _
vbYesNo + vbQuestion, "DATEN L�SCHEN")
If Warnung = vbYes Then
Range("A" & Start & ":D" & Ende).ClearContents
End If
End Sub
Mit freundlichen Gr��en
Claus
--
Vista Ultimate / Windows7
Office 2007 Ultimate / 2010 Professional
Hallo Claus,
Danke für Dein Makro das in meiner Beispieldatei einwandfrei funktioniert, aber
in meiner echten Datei nichts tut. Es reagiert nicht einmal???
Anbei mein ganzes Makro wo ich Dein Makro mit integriert habe. Ist etwas groß!
Sub Januarnamen()
Application.ScreenUpdating = False
Sheets("Januar").Select
ActiveSheet.Unprotect Password:=";3,77?999"
Dim Start As Long, Ende As Long, i As Long
Dim Warnung As Integer
Dim arrRows(3) As Variant
For i = 1 To 4
arrRows(i - 1) = Cells(Rows.Count, i).End(xlUp).Row
Next
Start = arrRows(0) + 1
Ende = WorksheetFunction.Max(arrRows)
If Ende <= Start Then Exit Sub
Warnung = MsgBox("Soll der Bereich A" & Start & _
" bis D" & Ende & " wirklich gelöscht werden?", _
vbYesNo + vbQuestion, "DATEN LöSCHEN")
If Warnung = vbYes Then
Range("A" & Start & ":D" & Ende).ClearContents
End If
Sheets("Personal").Select
Range("B4:c27").Select
Selection.Copy
Sheets("Tabellejan").Select
ActiveWindow.ScrollRow = 1
Range("C2").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Personal").Select
Range("F4:g13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tabellejan").Select
Range("c28").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=21
Sheets("Personal").Select
Range("f16:g23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tabellejan").Select
Range("c40").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Personal").Select
Range("J4:k27").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tabellejan").Select
ActiveWindow.SmallScroll Down:=21
Range("c48").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Personal").Select
Range("n4:o19").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tabellejan").Select
ActiveWindow.SmallScroll Down:=-34
Range("c64").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Personal").Select
Range("N4").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("B4").Select
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("Personal").Select
Range("I1").Select
ActiveCell.FormulaR1C1 = "1"
Range("B4:D27").Select
Selection.Copy
Sheets("MitarbeiterJahr").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Personal").Select
Range("F4:H13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("MitarbeiterJahr").Select
Range("A33").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Personal").Select
Range("F16:H23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("MitarbeiterJahr").Select
ActiveWindow.SmallScroll Down:=21
Range("A49").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Personal").Select
Range("J4:L27").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("MitarbeiterJahr").Select
ActiveWindow.SmallScroll Down:=23
Range("A63").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Personal").Select
Range("N4:P19").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("MitarbeiterJahr").Select
ActiveWindow.SmallScroll Down:=20
Range("A92").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Personal").Select
Range("I1").Select
Sheets("Datenbank 1").Select
Application.CutCopyMode = False
Sheets("Tabellejan").Select
Range("A1:F92").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Range("G1:K2"), CopyToRange:=Range( _
"G4:K91"), Unique:=False
Sheets("Datenbank 1").Select
Range("B2:D75").Select
Selection.Copy
Sheets("Januar").Select
Range("A76").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Tabellejan").Select
Range("J3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Januar").Select
Range("D72").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A73").Select
Sheets("Datenbank 1").Select
Application.CutCopyMode = False
ActiveSheet.ShowDataForm
Sheets("Datenbank 1").Select
Application.CutCopyMode = False
Sheets("Tabellejan").Select
Range("A1:F92").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Range("G1:K2"), CopyToRange:=Range( _
"G4:K91"), Unique:=False
Sheets("Datenbank 1").Select
Range("B2:D75").Select
Selection.Copy
Sheets("Januar").Select
Range("A76").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Tabellejan").Select
Range("J3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Januar").Select
Range("D72").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("A73").Select
Sheets("Datenbank 1").Select
Application.CutCopyMode = False
ActiveSheet.ShowDataForm
Sheets("Personal").Select
Range("I1").Select
Sheets("Januar").Select
Application.Goto Reference:="R1C1"
Sheets("Januar").Select
ActiveSheet.Protect Password:=";3,77?999", DrawingObjects:=True, contents:=True, _
Scenarios:=True
Application.ScreenUpdating = True
End Sub
Vielleicht hast Die eine Idee warum das Makro nicht funktioniert?
Der Bereich in dem die MA geschrieben werden ist von A76 bis D149! A76 ist der Start! A149 ist Ende
Gruß
Georg