Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
596to600
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
596to600
596to600
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Macro arbeitet sehr langsam Call

Macro arbeitet sehr langsam Call
14.04.2005 16:16:11
Marcel
Hallo Forum,
ich habe das Problem das ein Programmteil auf einem Blatt sehr sehr langsam läuft ich schreibe mal einen Auszug aus einem Makro
Das entprechende TB ist Tabelle14 wisst Ihr voran das liegt?
vielen Dank Marcel
Auszug***************************************************
Tabelle4.Select 'Hochkomma im Wertebereich entfernen
Range("B17").Value = Range("B17").Value
Range("A28:F5000").Value = Range("A28:F5000").Value
Range("A28").Select
Tabelle14.Select 'Hochkomma im Wertebereich entfernen
Range("H15:AE17").Value = Range("H15:AE17").Value
Call hk1_weg_zelle_b
Call hk1_weg_zelle_c
Call hk1_weg_zelle_g
Range("G17").Select
Tabelle15.Select
Call hk1_weg_j
Call hk1_weg_zelle_a

Sheets("Termin").Select
Range("J1").Select
ActiveCell.FormulaR1C1 = "1"
Selection.Font.ColorIndex = 2
Selection.Copy
Range("J17:J10000").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply, _
SkipBlanks:=False, Transpose:=False
Range("J17").Select
Application.CutCopyMode = False

**************************************************Auszug ende
Sub hk1_weg_zelle_a()
endup = Range("A65536").End(xlUp).Row
For i = 1 To endup
Range("A" & i).Activate
ActiveCell.Value = Right(ActiveCell.Value, Len(ActiveCell))
Next i
End Sub

Private Sub hk1_weg_zelle_b()
endup = Range("B65536").End(xlUp).Row
For i = 1 To endup
Range("B" & i).Activate
ActiveCell.Value = Right(ActiveCell.Value, Len(ActiveCell))
Next i
End Sub


Private Sub hk1_weg_zelle_c()
endup = Range("C65536").End(xlUp).Row
For i = 1 To endup
Range("C" & i).Activate
ActiveCell.Value = Right(ActiveCell.Value, Len(ActiveCell))
Next i
End Sub


Private Sub hk1_weg_a()
Columns("A:A").TextToColumns Destination:=Range("A1"), _
DataType:=xlDelimited, FieldInfo:=Array(1, 4)
End Sub


Private Sub hk1_weg_b()
Columns("B:B").TextToColumns Destination:=Range("B1"), _
DataType:=xlDelimited, FieldInfo:=Array(1, 4)
End Sub


Private Sub hk1_weg_c()
Columns("C:C").TextToColumns Destination:=Range("C1"), _
DataType:=xlDelimited, FieldInfo:=Array(1, 4)
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Macro arbeitet sehr langsam Call
14.04.2005 16:55:23
Martin
Hallo Marcel,
der ganze Select- und Activate-Kram ist überflüssig und macht das Makro langsam. Schreib mal an den Anfang des Codes
Application.ScreenUpdating = False
Aus Interesse: Was soll denn die Zeile
ActiveCell.Value = Right(ActiveCell.Value, Len(ActiveCell))
jeweils bewirken? M.E. änderst Du damit den Zellinhalt doch gar nicht.
Gruß
Martin Beck
AW: Macro arbeitet sehr langsam Call
14.04.2005 17:21:24
ANdreas
Hallo Martin,
ich glaube vor kurzem gabs hier im Forum diesen Fall, um ein evtl. führendes ' in einer Zelle zu entfernen.
Gruß
Andreas
AW: Macro arbeitet sehr langsam Call
14.04.2005 17:43:45
ransi
hallo martin
ich denke mit
ActiveCell.Value = Right(ActiveCell.Value, Len(ActiveCell))
ändert er die formel (wenn denn eine in activecell steht) in einen festen wert.
Das selecten und activaten, da hast du natürlich recht, kann er sich wirklich schenken.
ransi
Anzeige
AW: Macro arbeitet sehr langsam Call
15.04.2005 08:15:03
Marcel
Hallo Martin,
wie Andreas erwähnt hat, wird das führende Zeichen ' in der Zelle entfernt.
Der Code entfernt weiterhin die Formeln aus den Zellen.
Gruss
Marcel
PS: vielen Dank an euch alle, ich probiere das gleich mal aus :-)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige