Thema Datum  Von Nutzer Rating
Antwort
Rot Geschwindigkeit des VBA-Makros erhöhen
09.05.2022 21:54:52 Tom
NotSolved
10.05.2022 00:53:25 Gast63673
NotSolved
10.05.2022 00:57:26 Gast63673
NotSolved
10.05.2022 11:55:05 Gast4188
NotSolved
10.05.2022 19:01:58 Gast01287
NotSolved

Ansicht des Beitrags:
Von:
Tom
Datum:
09.05.2022 21:54:52
Views:
1756
Rating: Antwort:
  Ja
Thema:
Geschwindigkeit des VBA-Makros erhöhen

Hallo,

folgenden Code habe ich geschrieben. Er funktioniert und läuft folgendermaßen ab:

- Öffne alle Excel-Dateien in einem Zielordner nacheinander

- Schau bei jeder Excel-Datei den genutzten Bereich durch

- Formatiere "Date" um und Formatiere "Time" um (sodass die Schreibweise dieselbe bleibt, es jedoch als Text formatiert ist)

- Speichere die Excel und gehe zur nächsten

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub TEST()
 
    Dim Source As String
    Dim StrFile As String
 
    'do not forget last backslash in source directory.
    Source = "C:\Users\xxx\"
    StrFile = Dir(Source)
 
    Do While Len(StrFile) > 0
        Workbooks.Open Filename:=Source & StrFile
         
         
        Dim A As Excel.Range
        Dim B As Boolean
         
        For Each A In ActiveCell.CurrentRegion.Cells
         
        ' Suche nach Datum (Format: Date)
            If IsDate(A) Then
                A.Value = "'" & Replace(Format(A, "YYYY/MM/DD"), "/", "")
                A.NumberFormat = "@"
            End If
         
        'Suche Nach Uhrzeit (Format: Time)
            If CBool((A.Text Like "??:??:??") * (A.Value < 1)) = True Then
                A.Value = "'" & Replace(Format(A, "hh:nn:ss"), ":", "")
                A.NumberFormat = "@"
            End If
           
        Next
 
        Workbooks(StrFile).Close SaveChanges:=True
         
        StrFile = Dir()
    Loop
 
End Sub

Der Code funtioniert wunderbar, jedoch ist er nicht so performant und benötigt relativ lange. Hat jemand eine bessere Idee bzw. Verbesserungsvorschläge um die Geschwindigkeit zu erhöhen?

VG 

Tom


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Geschwindigkeit des VBA-Makros erhöhen
09.05.2022 21:54:52 Tom
NotSolved
10.05.2022 00:53:25 Gast63673
NotSolved
10.05.2022 00:57:26 Gast63673
NotSolved
10.05.2022 11:55:05 Gast4188
NotSolved
10.05.2022 19:01:58 Gast01287
NotSolved