Clever-Excel-Forum

Normale Version: Datei Größe 10 mb VBA-Fehler?
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
hallo zusammen, habe mit dem makro Recorder folgendes aufgenommen.
Die Datei ist 10 mb groß?! woran kann das liegen?



Code:
Sub Copy_Duplicates()
'
' Copy_Duplicates Makro
If MsgBox("aa?", vbYesNo) = vbYes Then
Range("A4:C4").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.ClearContents
    Sheets("Einzelwerte").Select
    Range("A4000").Select
    Selection.End(xlUp).Select
    Range("A2:C2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlUp)).Select
    Range("A2:C4000").Select
    Selection.Copy
    Windows("bbb.xlsm").Activate
    Sheets("ccc").Select
    Range("A4").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    With Selection.Interior
        .Pattern = xlNone
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    ActiveSheet.Range("$A$4:$C$4000").RemoveDuplicates Columns:=Array(1, 2, 3), _
        Header:=xlNo
    Range("C3").Select
Else
MsgBox "ddd"
End If
End Sub
Kann mir jemand helfen den Code so zu verschlanken dass bei der Selection.Clear Contents auch nur die Zellen in Spalte A,B und C gelöscht werden in denen auch wirklich etwas steht.
Gleiches gilt für das Kopieren, da habe ich jetzt einfach mal bis zeile 4000 eingetragen.. Auch hier wäre es schön wenn nur die Zeilen im Reiter Einzelwerte kopiert und auf Diplikate geprüft werden wenn auch Inhalt vorhanden ist.

Besten Dank jetzt schon mal
Hallo,

ist Dir eigentlich bewußt,daß Du mit jedem Select Dein Makro dazu zwingst,
Quasi einen Neustart zu machen?? Laß das Teil mal im Einzelschrittmodus
laufen, dann weißt Du künftig, was gemeint ist.

Ich glaube, Dir ist inzwischen von den Forumhelfern oft genug geschrieben worden,
verzichte auf Select und Activate.
Manche Ratschläge sind nämlich gar nicht so schlecht, kannst'e glauben.
Hallo,

ehrlich gesagt nicht =/
Wenn ich es könnte würde ich euch damit nicht nerven.
Würde jeden ratschlag annehmen, das kannst´du mir glauben
Der Rekorder ist dafür da, dass man nicht jegliche Syntax, die man braucht, nachschlagen muss. (Fast) Mehr nicht!

Für uns bist Du jetzt nur in Deiner Tabelle rumgelaufen.
habe versucht das ganze zu kürzen, es sind immer noch zwei selects drinnen =(
Und jetzt geht es nicht mehr. bei clear.Contents kommt der Fehler..


Sub Copy_Duplicates()
'
' Copy_Duplicates Makro
If MsgBox("Haben Sie in den Reiter -Einzelwerte- kopiert?", vbYesNo) = vbYes Then
Range("A5:C5").Select
    Workbooks("Möblierungsliste.xlsm").Worksheets("Inventarliste").Range("A5:C2000").ClearContents
    Workbooks("Möblierungsliste.xlsm").Worksheets("Einzelwerte").Range("A2:C4000").Copy
    Range("A5").Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
    ActiveSheet.Range("$A$5:$C$4000").RemoveDuplicates Columns:=Array(1, 2, 3), _
        Header:=xlNo
        Range("C3").Select
Else
MsgBox "Bitte kopieren Sie die relevanten Daten in den dafür vorgesehenen Reiter -Einzelwerte- =)"
End If
End Sub
Hallöchen,

was kommt denn für ein Fehler?
ich vermute
- Datei nicht geöffnet oder
- Schreibfehler bei Dateiname oder
- Schreibfehler bei Blattname oder
- Blattschutz aktiv oder
- ...