Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Cursor Sanduhr noch einige sek. nach Makro

Cursor Sanduhr noch einige sek. nach Makro
07.08.2013 12:17:51
karl
Hallo Leute,
diese Makro wird eigentlich zügig ausgeführt, jedoch ist einige sekunden noch die Sanduhr am laufen, so als wenn das Makro noch beschäftigt wäre.
Ist am Code was ?falsch-suboptimal?
https://www.herber.de/bbs/user/86746.xls

Option Explicit
Private Sub CommandButton1_Click()
Dim f As Long
Dim i As Long
Dim loletzte As Long
Dim such1
Dim arrIn As Variant
Dim c As Range
such1 = Array("a", "b", "c", 1, 2, 3, "aa", 123)
loletzte = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
arrIn = Range("A1:F40") ' & loletzte)
Range("A1:F40").Interior.ColorIndex = xlNone
'Range("A1:F" & loletzte).Interior.ColorIndex = xlNone
For i = 1 To loletzte
For f = LBound(such1) To UBound(such1)
For Each c In UsedRange 'arrIn
If c = such1(f) Then
c.Interior.ColorIndex = 7
End If
Next c
Next f
Next i
End Sub

dankeschön
karl

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Cursor Sanduhr noch einige sek. nach Makro
07.08.2013 12:27:51
karl
Sorry, habs verpennt.
hab mal die schleife i rausgenommen, jatzt scheints ok.
trotzdem danke
karl

AW: Cursor Sanduhr noch einige sek. nach Makro
07.08.2013 12:34:04
Rudi
Hallo,
Ist am Code was ?falsch-suboptimal?
ja.
Wozu das?: For i = 1 To loletzte
Private Sub CommandButton1_Click()
Dim such1
Dim arrIn As Range
Dim c As Range
Application.ScreenUpdating = False
such1 = Array("a", "b", "c", 1, 2, 3, "aa", 123)
Set arrIn = Range("A1").CurrentRegion.Resize(, 6)
arrIn.Interior.ColorIndex = xlNon
For Each c In arrIn
If Not IsError(Application.Match(c.Value, such1, 0)) Then
c.Interior.ColorIndex = 7
End If
Next c
End Sub

Gruß
Rudi

Anzeige
AW: Cursor Sanduhr noch einige sek. nach Makro
07.08.2013 13:07:33
karl
besten Dank Rudi,
dein code ist zudem auch noch wesentlich kürzer.
karl

AW: Cursor Sanduhr noch einige sek. nach Makro
07.08.2013 13:04:39
Doris
Hallo Karl,
wäre auch an einem Tip interessiert. Vermutlich liegt es am Array. Ich nutze das in einem Makro und genau hier habe ich auch diesen Effekt. Gruß Doris

an einem Tip interessiert
07.08.2013 13:10:46
Rudi
Hallo,
Vermutlich liegt es am Array.
Mit Sicherheit nicht. Schneller als im Array geht's kaum.
Die Bremse war hier: For i = 1 To loletzte
Wozu die Folgeschleifen x-mal durchlaufen?
Gruß
Rudi

Anzeige
AW: an einem Tip interessiert
07.08.2013 17:30:49
Doris
Hallo zusammen,
Hatte heute leider nicht die Zeit Eure Anregungen zu testen.
Melde mich , wenn ich ein Ergebnis habe.
Gruß Doris
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige