Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1324to1328
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
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

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

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
Anzeige

87 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige