Thema Datum  Von Nutzer Rating
Antwort
05.01.2016 07:03:28 Andre
NotSolved
06.01.2016 15:27:50 Gast28524
NotSolved
06.01.2016 15:40:24 Andre
NotSolved
06.01.2016 16:20:53 Gast25935
NotSolved
07.01.2016 07:56:43 Andre
NotSolved
06.01.2016 22:17:39 Gast69812
NotSolved
07.01.2016 05:51:07 Gast10186
NotSolved
07.01.2016 07:45:58 Andre
NotSolved
07.01.2016 08:06:27 Andre
NotSolved
09.01.2016 19:10:40 Gast62795
NotSolved
11.01.2016 08:20:07 Andre
NotSolved
11.01.2016 10:22:55 Gast7783
NotSolved
11.01.2016 12:36:32 Andre
NotSolved
11.01.2016 12:39:35 Andre
NotSolved
11.01.2016 15:56:45 Gast87431
NotSolved
11.01.2016 16:14:03 Andre
NotSolved
11.01.2016 16:30:15 Gast67223
NotSolved
12.01.2016 08:21:54 Gast77619
NotSolved
11.01.2016 16:34:42 Gast89738
NotSolved
12.01.2016 08:27:34 Andre
NotSolved
12.01.2016 12:41:22 Gast14356
NotSolved
12.01.2016 14:12:59 Andre
NotSolved
12.01.2016 14:17:04 Andre
NotSolved
12.01.2016 15:46:33 Gast57141
NotSolved
13.01.2016 07:56:18 Andre
NotSolved
13.01.2016 08:09:51 Andre
NotSolved
13.01.2016 08:32:16 Gast86894
NotSolved
13.01.2016 08:42:11 Andre
NotSolved
13.01.2016 19:20:12 Gast86704
NotSolved
14.01.2016 08:32:14 Andre
NotSolved
14.01.2016 10:10:53 Gast34177
NotSolved
14.01.2016 10:28:38 Andre
NotSolved
14.01.2016 10:45:46 Gast25298
NotSolved
14.01.2016 10:58:07 Andre
NotSolved
14.01.2016 11:33:50 Gast21502
NotSolved
14.01.2016 12:18:11 Andre
NotSolved
14.01.2016 15:49:42 Gast23760
NotSolved
14.01.2016 16:09:09 Andre
****
NotSolved
14.01.2016 18:55:41 Gast81853
NotSolved
15.01.2016 08:18:04 Andre
NotSolved
15.01.2016 19:30:59 Gast45694
NotSolved
18.01.2016 08:09:01 Andre
NotSolved
18.01.2016 08:12:08 Andre
NotSolved
18.01.2016 18:02:48 Gast82440
NotSolved
19.01.2016 08:40:26 Andre
NotSolved
19.01.2016 13:36:07 Gast75130
NotSolved
19.01.2016 14:04:24 Andre
NotSolved
19.01.2016 18:19:20 Gast65228
NotSolved
19.01.2016 18:20:55 Gast29977
NotSolved
20.01.2016 07:21:35 Andre
NotSolved
20.01.2016 11:42:16 aufran
NotSolved
20.01.2016 11:54:57 Andre
NotSolved
20.01.2016 12:03:47 Gast44577
NotSolved
20.01.2016 15:58:00 aufran
NotSolved
21.01.2016 21:41:23 aufran
NotSolved
21.01.2016 21:52:00 Gast14641
NotSolved
20.01.2016 12:01:05 Gast18965
NotSolved
20.01.2016 12:07:06 Gast343
NotSolved
20.01.2016 12:18:06 Andre
NotSolved
20.01.2016 12:28:46 Gast95544
Solved
Rot Durchsuchen von bestimmten Exceldateien mit Hilfe von einem Makro Exce
20.01.2016 20:02:43 Gast15375
NotSolved
21.01.2016 07:52:14 Andre
NotSolved
21.01.2016 10:46:39 Gast54269
NotSolved
21.01.2016 10:59:39 Gast19460
NotSolved
21.01.2016 15:04:13 Andre
NotSolved
21.01.2016 15:09:07 Andre
NotSolved
21.01.2016 15:55:44 Gast30371
NotSolved
25.01.2016 07:53:22 Andre
NotSolved
25.01.2016 08:35:01 Andre
NotSolved
25.01.2016 08:35:07 Andre
NotSolved
22.01.2016 13:51:05 Gast11423
NotSolved
22.01.2016 22:45:16 aufran
NotSolved
25.01.2016 08:08:43 Andre
NotSolved
25.01.2016 11:18:33 aufran
NotSolved
25.01.2016 12:07:03 Andre
NotSolved
25.01.2016 08:06:16 Andre
NotSolved
25.01.2016 19:38:52 Gast92881
NotSolved
25.01.2016 19:40:23 Gast31903
NotSolved
26.01.2016 07:26:40 Andre
NotSolved
26.01.2016 09:25:34 Gast31028
NotSolved
26.01.2016 10:15:47 Andre
NotSolved
26.01.2016 11:48:57 Gast10723
NotSolved
26.01.2016 13:23:31 Andre
NotSolved
27.01.2016 14:23:48 Gast20611
NotSolved
27.01.2016 14:48:05 Andre
NotSolved
27.01.2016 14:56:24 Andre
NotSolved
27.01.2016 15:30:27 Gast76603
NotSolved
27.01.2016 15:30:28 Gast42470
NotSolved
27.01.2016 15:57:14 Andre
NotSolved
27.01.2016 16:21:33 Andre
NotSolved
27.01.2016 20:54:35 Gast808
NotSolved
28.01.2016 07:25:57 Andre
NotSolved
28.01.2016 16:20:47 Gast66068
Solved
29.01.2016 12:28:40 Andre
NotSolved
29.01.2016 17:35:37 Gast3880
NotSolved
30.01.2016 10:06:13 aufran
NotSolved

Ansicht des Beitrags:
Von:
Gast15375
Datum:
20.01.2016 20:02:43
Views:
900
Rating: Antwort:
  Ja
Thema:
Durchsuchen von bestimmten Exceldateien mit Hilfe von einem Makro Exce

Eine Ergänzung hätte ich noch. Und zwar hab ich den Vergleich bei den Ordnernamen nochmal geändert. Mein Vergleich mit Len bzw. jetzt mit Instr hat mich noch gestört. Jetzt habe ich die Parameter unter denen der Ordner durchsucht oder nicht durchsucht wird am Anfang an ein globales Array übergeben. Das war im Vergleich mit vielen vielen Durchläufe um LIchtjahre schneller. Wird sich bei dir evtl. nicht wesentlich auswirken aber ne Milisekunde ist da schon noch zu holen. :-D Zumindest wird es so leichter zu warten. Die Arrays am Anfang (ordnerja und ordnernein - Name sollte selbsterklärend sein :-) ) einfach erweitern oder kürzen.  Das Beispiel hier mal nur für eine der beiden Varianten. 

Gruß

 

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
Dim dateien()
Dim ordner()
Dim ordnernein()
Dim ordnerja()
Option Explicit
     
Sub DateienLesen()
       
Dim DateiName As String
Dim quelle As String
Dim i As Long
Dim j As Long
Dim Dateialt As String
Dim zeilealt As Long
Dim Namekurz As String
Dim Blatt As Object
Dim gefunden As Boolean
Dim suchwert As Variant
Dim suche As Variant
 
Application.ScreenUpdating = False
    
ordnernein = Array("Änderung", "Fahrpl", "14", "13", "12", "11", "10")
ordnerja = Array("Abrechnung", "Rahmenvertrag", "16", "Region")
    
Dateialt = ThisWorkbook.name
zeilealt = 1
ActiveSheet.Columns(1).ClearContents
 
suchwert = InputBox("Zu suchenden Wert eingeben!", "Suchtexteingabe")
   
If suchwert = "" Then
    MsgBox "Sie haben keinen Wert eingegeben oder Abbrechen angeklickt. Das Program wird beendet.", , "Abbruch Eingaben"
    End
End If
   
ReDim dateien(0)
dateien(0) = 0
         
quelle = "V:\0101\SCHULEN\0-FAHRT"
If Right(quelle, 1) = "\" Then quelle = Left(quelle, Len(quelle) - 1)
  
If Dir(quelle & "\") = "" Then
    MsgBox "Der Pfad wurde nicht gefunden!"
    End
End If
  
ReDim ordner(1)
ordner(0) = 0
ordner(1) = "1" & quelle
  
While UBound(ordner) <> ordner(0)
    Call txtsuchen
Wend
  
If dateien(0) = 0 Then
MsgBox "Keine .txt Dateien gefunden!"
Else
'Daten auslesen
            
    For i = 1 To dateien(0)
    DateiName = dateien(i)
    Namekurz = Right(DateiName, InStr(1, StrReverse(DateiName), "\") - 1)
    gefunden = False
       
    'die Mappen aufmachen
    Workbooks.Open DateiName, Password:="ABC", ReadOnly:=True
        
    For Each Blatt In Worksheets
        suche = Application.WorksheetFunction.CountIf(ActiveSheet.UsedRange, suchwert & "*")
           
        If suche > 0 Then gefunden = True
           
    Next Blatt
           
    Workbooks(Dateialt).Activate
    Workbooks(Namekurz).Close savechanges:=False
       
    If gefunden = True Then
        ActiveSheet.Hyperlinks.Add anchor:=ActiveSheet.Cells(zeilealt, 1), Address:=DateiName, TextToDisplay:=Namekurz
        zeilealt = zeilealt + 2
    End If
   
    Next i
End If
            
Application.ScreenUpdating = True
 
            
End Sub
      
   
    
Function txtsuchen()
Dim suche
Dim i As Long
Dim quelle As String
Dim oOrdner
Dim oDateien
Dim datsystem
Dim knoten
Dim datei
Dim ablage
Dim dname As String
Dim onam As String
Dim anfang
  
 
Set datsystem = CreateObject("Scripting.FileSystemObject")
anfang = Left(ordner(ordner(0) + 1), 1)
quelle = Right(ordner(ordner(0) + 1), Len(ordner(ordner(0) + 1)) - 1)
 
ordner(0) = ordner(0) + 1
  
ChDrive (Left(quelle & "\", 3))
ChDir (quelle)
Set knoten = datsystem.getfolder(quelle)
  
Set oDateien = knoten.Files
Set oOrdner = knoten.subFolders
  
For Each ablage In oOrdner
    onam = ablage.name
        If Left(onam, 1) <> "." Then
            If anfang <> "x" Then
            ' tiefe ab der der filter greift
                If anfang = 2 Then
                    ReDim Preserve ordner(UBound(ordner) + 1)
                    ordner(UBound(ordner)) = "x" & ablage.Path
                Else
                    ReDim Preserve ordner(UBound(ordner) + 1)
                    ordner(UBound(ordner)) = (anfang + 1) & ablage.Path
                End If
            Else
                If (UBound(Filter(ordnerja, onam)) > -1) Then
                    If (UBound(Filter(ordnernein, onam)) > -1) Then
                    ' die Werete gefunden, da nichts machen
                    Else
                        ReDim Preserve ordner(UBound(ordner) + 1)
                        ordner(UBound(ordner)) = "x" & ablage.Path
                    End If
                End If
            End If
        End If
Next ablage
  
For Each datei In oDateien
    dname = datei.name
        If Left(dname, 1) <> "." Then
              
            If Right(dname, 4) = ".xls" Then    'ggf. noch an xlsx anpassen etc. aber auch die Zahl dazu
                If (InStr(1, dname, "_Planung", 1) > 0 Or InStr(1, dname, "_planung", 1) > 0 Or InStr(1, dname, "_PLANUNG", 1) > 0) And InStr(1, dname, "2016", 1) > 0 Then
                dateien(0) = dateien(0) + 1
                ReDim Preserve dateien(dateien(0))
                dateien(dateien(0)) = datei.Path
                End If
            End If
        End If
Next datei
  
Set datsystem = Nothing
Set knoten = Nothing
Set oDateien = Nothing
Set oOrdner = Nothing
  
End Function

 


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
05.01.2016 07:03:28 Andre
NotSolved
06.01.2016 15:27:50 Gast28524
NotSolved
06.01.2016 15:40:24 Andre
NotSolved
06.01.2016 16:20:53 Gast25935
NotSolved
07.01.2016 07:56:43 Andre
NotSolved
06.01.2016 22:17:39 Gast69812
NotSolved
07.01.2016 05:51:07 Gast10186
NotSolved
07.01.2016 07:45:58 Andre
NotSolved
07.01.2016 08:06:27 Andre
NotSolved
09.01.2016 19:10:40 Gast62795
NotSolved
11.01.2016 08:20:07 Andre
NotSolved
11.01.2016 10:22:55 Gast7783
NotSolved
11.01.2016 12:36:32 Andre
NotSolved
11.01.2016 12:39:35 Andre
NotSolved
11.01.2016 15:56:45 Gast87431
NotSolved
11.01.2016 16:14:03 Andre
NotSolved
11.01.2016 16:30:15 Gast67223
NotSolved
12.01.2016 08:21:54 Gast77619
NotSolved
11.01.2016 16:34:42 Gast89738
NotSolved
12.01.2016 08:27:34 Andre
NotSolved
12.01.2016 12:41:22 Gast14356
NotSolved
12.01.2016 14:12:59 Andre
NotSolved
12.01.2016 14:17:04 Andre
NotSolved
12.01.2016 15:46:33 Gast57141
NotSolved
13.01.2016 07:56:18 Andre
NotSolved
13.01.2016 08:09:51 Andre
NotSolved
13.01.2016 08:32:16 Gast86894
NotSolved
13.01.2016 08:42:11 Andre
NotSolved
13.01.2016 19:20:12 Gast86704
NotSolved
14.01.2016 08:32:14 Andre
NotSolved
14.01.2016 10:10:53 Gast34177
NotSolved
14.01.2016 10:28:38 Andre
NotSolved
14.01.2016 10:45:46 Gast25298
NotSolved
14.01.2016 10:58:07 Andre
NotSolved
14.01.2016 11:33:50 Gast21502
NotSolved
14.01.2016 12:18:11 Andre
NotSolved
14.01.2016 15:49:42 Gast23760
NotSolved
14.01.2016 16:09:09 Andre
****
NotSolved
14.01.2016 18:55:41 Gast81853
NotSolved
15.01.2016 08:18:04 Andre
NotSolved
15.01.2016 19:30:59 Gast45694
NotSolved
18.01.2016 08:09:01 Andre
NotSolved
18.01.2016 08:12:08 Andre
NotSolved
18.01.2016 18:02:48 Gast82440
NotSolved
19.01.2016 08:40:26 Andre
NotSolved
19.01.2016 13:36:07 Gast75130
NotSolved
19.01.2016 14:04:24 Andre
NotSolved
19.01.2016 18:19:20 Gast65228
NotSolved
19.01.2016 18:20:55 Gast29977
NotSolved
20.01.2016 07:21:35 Andre
NotSolved
20.01.2016 11:42:16 aufran
NotSolved
20.01.2016 11:54:57 Andre
NotSolved
20.01.2016 12:03:47 Gast44577
NotSolved
20.01.2016 15:58:00 aufran
NotSolved
21.01.2016 21:41:23 aufran
NotSolved
21.01.2016 21:52:00 Gast14641
NotSolved
20.01.2016 12:01:05 Gast18965
NotSolved
20.01.2016 12:07:06 Gast343
NotSolved
20.01.2016 12:18:06 Andre
NotSolved
20.01.2016 12:28:46 Gast95544
Solved
Rot Durchsuchen von bestimmten Exceldateien mit Hilfe von einem Makro Exce
20.01.2016 20:02:43 Gast15375
NotSolved
21.01.2016 07:52:14 Andre
NotSolved
21.01.2016 10:46:39 Gast54269
NotSolved
21.01.2016 10:59:39 Gast19460
NotSolved
21.01.2016 15:04:13 Andre
NotSolved
21.01.2016 15:09:07 Andre
NotSolved
21.01.2016 15:55:44 Gast30371
NotSolved
25.01.2016 07:53:22 Andre
NotSolved
25.01.2016 08:35:01 Andre
NotSolved
25.01.2016 08:35:07 Andre
NotSolved
22.01.2016 13:51:05 Gast11423
NotSolved
22.01.2016 22:45:16 aufran
NotSolved
25.01.2016 08:08:43 Andre
NotSolved
25.01.2016 11:18:33 aufran
NotSolved
25.01.2016 12:07:03 Andre
NotSolved
25.01.2016 08:06:16 Andre
NotSolved
25.01.2016 19:38:52 Gast92881
NotSolved
25.01.2016 19:40:23 Gast31903
NotSolved
26.01.2016 07:26:40 Andre
NotSolved
26.01.2016 09:25:34 Gast31028
NotSolved
26.01.2016 10:15:47 Andre
NotSolved
26.01.2016 11:48:57 Gast10723
NotSolved
26.01.2016 13:23:31 Andre
NotSolved
27.01.2016 14:23:48 Gast20611
NotSolved
27.01.2016 14:48:05 Andre
NotSolved
27.01.2016 14:56:24 Andre
NotSolved
27.01.2016 15:30:27 Gast76603
NotSolved
27.01.2016 15:30:28 Gast42470
NotSolved
27.01.2016 15:57:14 Andre
NotSolved
27.01.2016 16:21:33 Andre
NotSolved
27.01.2016 20:54:35 Gast808
NotSolved
28.01.2016 07:25:57 Andre
NotSolved
28.01.2016 16:20:47 Gast66068
Solved
29.01.2016 12:28:40 Andre
NotSolved
29.01.2016 17:35:37 Gast3880
NotSolved
30.01.2016 10:06:13 aufran
NotSolved