Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1156to1160
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
Inhaltsverzeichnis

Makro sehr langsam - kopieren

Makro sehr langsam - kopieren
Lutz
Hallo Excel-Profis,
ich habe mal wieder ein kleines Problem:
Ich möchte in Spalte B2:B41473 jede Zelle die nur ein " ' " als Inhalt hat mit dem Inhalt der darüberliegenden Zelle füllen.
Ich habe 2 Makros, das erste geht nicht (weil die Zelle ja nicht blank ist) und das 2te ist sehr langsam aber es geht. Kann jemand das etwas schneller machen?
Sub Auffuellen1()
Set ber = Range("B2:B41473").SpecialCells(xlCellTypeBlanks)
For Each cell In ber
cell.Value = cell.Offset(-1, 0).Value
Next
End Sub
Sub ZellenAusfuellen()
Dim Zelle As Range
Application.ScreenUpdating = False
For Each Zelle In Range("B2:B41473")
If Zelle = "" Then Zelle = Zelle.Offset(-1, 0)
Next
Application.ScreenUpdating = True
End Sub

Vielen Dank und viele Grüße
Lutz
AW: Makro sehr langsam - kopieren
11.05.2010 17:12:31
Martin
Hallo Lutz,
probiere mal folgendes Makro:
Sub ZellenAusfuellen()
Dim Zelle As Range
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each Zelle In Range("B2:B41473")
If Zelle = "" Then Zelle = Zelle.Offset(-1, 0)
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Viele Grüße
Martin
AW: Makro sehr langsam - kopieren
11.05.2010 17:18:13
Lutz
Halllo Martin,
vielen Dank, ist viel schneller.
Das war ja echt blind von mir - screenupadating hatte ich drin...
Vielen Dank und noch einen schönen Tag
Gruß aus Hamburg Lutz
Anzeige
An Martin
11.05.2010 21:17:16
Holger
Hi Martin,
was macht diese Zeile?
Application.Calculation = xlCalculationManual
Hat das was mit der Geschwindkeit zu tun?
AW: An Martin
11.05.2010 21:35:16
Lutz
Hallo Holger,
die Zeile unterbindet nach jeder Änderung das neuberechnen der ganzen Arbeitsmappe. Sollte man am Ende wieder auf autumatic setzen sonst muß man immer von Hand F9 drücken zum berechnen.
Gruß Lutz
AW: An Martin
11.05.2010 21:42:45
Holger
Cool, danke sehr.
Kann ich gut gebrauchen
AW: Makro sehr langsam - kopieren
11.05.2010 18:32:59
Peter
Hallo Lutz,
oder mach es über ein Array
Option Explicit
Public Sub ApostrophErsetzen()
Dim vTemp  As Variant
Dim lIndx  As Long
With ThisWorkbook.Worksheets("Tabelle1") ' den Tabellenblattnamen ggf. anpassen!
vTemp = .Range("B2:B" & .Cells(Rows.Count, 2).End(xlUp).Row)
For lIndx = LBound(vTemp, 1) To UBound(vTemp, 1)
If vTemp(lIndx, 1) = "" Then
vTemp(lIndx, 1) = vTemp(lIndx - 1, 1)
End If
Next lIndx
.Range("B2:B" & .Cells(Rows.Count, 2).End(xlUp).Row) = vTemp
End With
End Sub

Gruß aus HH, Peter
Anzeige
AW: Makro sehr langsam - kopieren
11.05.2010 21:37:40
Lutz
Hallo Peter,
vielen Dank das ist auch rasant.
Gruß aus Hamburg Lutz
AW: Makro sehr langsam - kopieren
11.05.2010 21:35:14
Gerd
Hallo Lutz,
kannst du auf das Texterkennungszeichen ' in den Zellen des Bereichs verzichten?
Gruß Gerd
AW: Makro sehr langsam - kopieren
11.05.2010 21:38:43
Lutz
Hallo Gerd,
leider nicht, das kommt schon so an...
Aber die Makros laufen ja sehr gut und schnell.
Gruß Lutz
AW: Makro sehr langsam - kopieren
11.05.2010 21:42:51
Gerd
Hallo Lutz!
leider nicht, das kommt schon so an...
Ich formuliere neu: Müssen diese Zeichen hinterher drinbleiben, z.B. wegen führenden Nullen
oder nicht?
Gruß Gerd
AW: Makro sehr langsam - kopieren
11.05.2010 21:47:43
Lutz
Hallo Gerd,
nein die Zeichen können weg und sollen komplett durch das darüber erstetzt werden.
Gruß Lutz
Anzeige
AW: Makro sehr langsam - kopieren
11.05.2010 22:17:25
Gerd
Hallo Lutz!
Sub Auffuellen4()
Dim ber As Range
Set ber = Range("B2:B41473")
ber.Value = ber.Value
If Not Intersect(ber, Columns(2).SpecialCells(xlCellTypeBlanks)) Is Nothing Then
ber.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=" & "R[-1]C"
ber.Formula = ber.Value
End If
End Sub
Gruß Gerd
AW: Makro sehr langsam - kopieren
11.05.2010 22:28:20
Lutz
Hallo Gerd,
vielen Dank, das funktioniert auch wunderbar.
Viele Grüße aus Hamburg
Lutz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige