Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
688to692
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
688to692
688to692
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA Programmierung

VBA Programmierung
31.10.2005 11:40:28
Volker
Hallo Forum,
ich habe mal wieder ein kleines Excel Problem:
Als Grundlage habe diverse csv Dateien mit unterschiedlichen Namen. Diese möchte ich mittels eines Makros bearbeiten und eine Pivot Tabelle erstellen. Das Problem:
1. Die Anzahl der Spalten in den csv Dateien variiert! Die Anzahl der Spalten ist fest. Kann man sich die Anzahl der Zeilen einer Datei zurückgeben lassen?
2. Die Dateien liegen in einem speziellen Ordner auf der Festplatte. Kann man auf diesen Ort im Makro verweisen, wobei der Name der Datei variabel sein sollte? Also in etwa d:\test\temp\xxx.csv (wobei xxx für beliebige Zeichen steht).
Anbei ein Auszug aus dem Quellcode:
Vielen Dank
Volker
Sub Makro1()
'
' Makro1 Makro
' Makro am 24.10.2005 von Mörkens Volker aufgezeichnet
'
'
Columns("B:B").Select
Selection.NumberFormat = "h:mm;@"
Columns("D:E").Select
Selection.ClearContents
Range("A1:C949").Select
ActiveWindow.ScrollRow = 944
ActiveWindow.ScrollRow = 935
ActiveWindow.ScrollRow = 933
ActiveWindow.ScrollRow = 931
ActiveWindow.ScrollRow = 929
ActiveWindow.ScrollRow = 927
ActiveWindow.ScrollRow = 925
ActiveWindow.ScrollRow = 921
ActiveWindow.ScrollRow = 919
ActiveWindow.ScrollRow = 916
ActiveWindow.ScrollRow = 914
ActiveWindow.ScrollRow = 912
ActiveWindow.ScrollRow = 910
ActiveWindow.ScrollRow = 908
ActiveWindow.ScrollRow = 902
ActiveWindow.ScrollRow = 893
ActiveWindow.ScrollRow = 880
ActiveWindow.ScrollRow = 866
ActiveWindow.ScrollRow = 853
ActiveWindow.ScrollRow = 844
ActiveWindow.ScrollRow = 832
ActiveWindow.ScrollRow = 825
ActiveWindow.ScrollRow = 821
ActiveWindow.ScrollRow = 819
ActiveWindow.ScrollRow = 817
ActiveWindow.ScrollRow = 815
ActiveWindow.ScrollRow = 813
ActiveWindow.ScrollRow = 811
ActiveWindow.ScrollRow = 810
ActiveWindow.ScrollRow = 808
ActiveWindow.ScrollRow = 806
ActiveWindow.ScrollRow = 804
ActiveWindow.ScrollRow = 800
ActiveWindow.ScrollRow = 796
ActiveWindow.ScrollRow = 794
ActiveWindow.ScrollRow = 793
ActiveWindow.ScrollRow = 791
ActiveWindow.ScrollRow = 789
ActiveWindow.ScrollRow = 785
ActiveWindow.ScrollRow = 783
ActiveWindow.ScrollRow = 781
ActiveWindow.ScrollRow = 779
ActiveWindow.ScrollRow = 777
ActiveWindow.ScrollRow = 775
ActiveWindow.ScrollRow = 774
ActiveWindow.ScrollRow = 772
ActiveWindow.ScrollRow = 770
ActiveWindow.ScrollRow = 768
ActiveWindow.ScrollRow = 766
ActiveWindow.ScrollRow = 764
ActiveWindow.ScrollRow = 762
ActiveWindow.ScrollRow = 760
ActiveWindow.ScrollRow = 757
ActiveWindow.ScrollRow = 755
ActiveWindow.ScrollRow = 751
ActiveWindow.ScrollRow = 749
ActiveWindow.ScrollRow = 747
ActiveWindow.ScrollRow = 745
ActiveWindow.ScrollRow = 743
ActiveWindow.ScrollRow = 741
ActiveWindow.ScrollRow = 739
ActiveWindow.ScrollRow = 736
ActiveWindow.ScrollRow = 734
ActiveWindow.ScrollRow = 732
ActiveWindow.ScrollRow = 728
ActiveWindow.ScrollRow = 722
ActiveWindow.ScrollRow = 719
ActiveWindow.ScrollRow = 713
ActiveWindow.ScrollRow = 711
ActiveWindow.ScrollRow = 709
ActiveWindow.ScrollRow = 707
ActiveWindow.ScrollRow = 702
ActiveWindow.ScrollRow = 698
ActiveWindow.ScrollRow = 694
ActiveWindow.ScrollRow = 690
ActiveWindow.ScrollRow = 685
ActiveWindow.ScrollRow = 679
ActiveWindow.ScrollRow = 675
ActiveWindow.ScrollRow = 669
ActiveWindow.ScrollRow = 666
ActiveWindow.ScrollRow = 662
ActiveWindow.ScrollRow = 656
ActiveWindow.ScrollRow = 652
ActiveWindow.ScrollRow = 649
ActiveWindow.ScrollRow = 643
ActiveWindow.ScrollRow = 639
ActiveWindow.ScrollRow = 633
ActiveWindow.ScrollRow = 628
ActiveWindow.ScrollRow = 622
ActiveWindow.ScrollRow = 618
ActiveWindow.ScrollRow = 615
ActiveWindow.ScrollRow = 611
ActiveWindow.ScrollRow = 609
ActiveWindow.ScrollRow = 605
ActiveWindow.ScrollRow = 601
ActiveWindow.ScrollRow = 597
ActiveWindow.ScrollRow = 594
ActiveWindow.ScrollRow = 588
ActiveWindow.ScrollRow = 582
ActiveWindow.ScrollRow = 580
ActiveWindow.ScrollRow = 577
ActiveWindow.ScrollRow = 573
ActiveWindow.ScrollRow = 569
ActiveWindow.ScrollRow = 565
ActiveWindow.ScrollRow = 561
ActiveWindow.ScrollRow = 556
ActiveWindow.ScrollRow = 552
ActiveWindow.ScrollRow = 546
ActiveWindow.ScrollRow = 543
ActiveWindow.ScrollRow = 541
ActiveWindow.ScrollRow = 539
ActiveWindow.ScrollRow = 537
ActiveWindow.ScrollRow = 535
ActiveWindow.ScrollRow = 529
ActiveWindow.ScrollRow = 520
ActiveWindow.ScrollRow = 508
ActiveWindow.ScrollRow = 495
ActiveWindow.ScrollRow = 480
ActiveWindow.ScrollRow = 471
ActiveWindow.ScrollRow = 461
ActiveWindow.ScrollRow = 455
ActiveWindow.ScrollRow = 450
ActiveWindow.ScrollRow = 446
ActiveWindow.ScrollRow = 440
ActiveWindow.ScrollRow = 429
ActiveWindow.ScrollRow = 414
ActiveWindow.ScrollRow = 397
ActiveWindow.ScrollRow = 387
ActiveWindow.ScrollRow = 376
ActiveWindow.ScrollRow = 366
ActiveWindow.ScrollRow = 351
ActiveWindow.ScrollRow = 346
ActiveWindow.ScrollRow = 340
ActiveWindow.ScrollRow = 334
ActiveWindow.ScrollRow = 323
ActiveWindow.ScrollRow = 312
ActiveWindow.ScrollRow = 296
ActiveWindow.ScrollRow = 285
ActiveWindow.ScrollRow = 279
ActiveWindow.ScrollRow = 274
ActiveWindow.ScrollRow = 270
ActiveWindow.ScrollRow = 264
ActiveWindow.ScrollRow = 257
ActiveWindow.ScrollRow = 249
ActiveWindow.ScrollRow = 243
ActiveWindow.ScrollRow = 238
ActiveWindow.ScrollRow = 232
ActiveWindow.ScrollRow = 226
ActiveWindow.ScrollRow = 219
ActiveWindow.ScrollRow = 211
ActiveWindow.ScrollRow = 206
ActiveWindow.ScrollRow = 200
ActiveWindow.ScrollRow = 196
ActiveWindow.ScrollRow = 192
ActiveWindow.ScrollRow = 187
ActiveWindow.ScrollRow = 183
ActiveWindow.ScrollRow = 181
ActiveWindow.ScrollRow = 175
ActiveWindow.ScrollRow = 170
ActiveWindow.ScrollRow = 162
ActiveWindow.ScrollRow = 152
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 143
ActiveWindow.ScrollRow = 137
ActiveWindow.ScrollRow = 135
ActiveWindow.ScrollRow = 132
ActiveWindow.ScrollRow = 130
ActiveWindow.ScrollRow = 126
ActiveWindow.ScrollRow = 115
ActiveWindow.ScrollRow = 107
ActiveWindow.ScrollRow = 99
ActiveWindow.ScrollRow = 90
ActiveWindow.ScrollRow = 81
ActiveWindow.ScrollRow = 73
ActiveWindow.ScrollRow = 65
ActiveWindow.ScrollRow = 60
ActiveWindow.ScrollRow = 54
ActiveWindow.ScrollRow = 52
ActiveWindow.ScrollRow = 48
ActiveWindow.ScrollRow = 43
ActiveWindow.ScrollRow = 39
ActiveWindow.ScrollRow = 35
ActiveWindow.ScrollRow = 33
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollRow = 5
ActiveWindow.ScrollRow = 3
ActiveWindow.ScrollRow = 1
ActiveWindow.ScrollRow = 5
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 33
ActiveWindow.ScrollRow = 43
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 56
ActiveWindow.ScrollRow = 62
ActiveWindow.ScrollRow = 69
ActiveWindow.ScrollRow = 82
ActiveWindow.ScrollRow = 90
ActiveWindow.ScrollRow = 98
ActiveWindow.ScrollRow = 103
ActiveWindow.ScrollRow = 111
ActiveWindow.ScrollRow = 118
ActiveWindow.ScrollRow = 122
ActiveWindow.ScrollRow = 128
ActiveWindow.ScrollRow = 134
ActiveWindow.ScrollRow = 137
ActiveWindow.ScrollRow = 143
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 151
ActiveWindow.ScrollRow = 156
ActiveWindow.ScrollRow = 160
ActiveWindow.ScrollRow = 166
ActiveWindow.ScrollRow = 173
ActiveWindow.ScrollRow = 181
ActiveWindow.ScrollRow = 187
ActiveWindow.ScrollRow = 194
ActiveWindow.ScrollRow = 204
ActiveWindow.ScrollRow = 209
ActiveWindow.ScrollRow = 211
ActiveWindow.ScrollRow = 217
ActiveWindow.ScrollRow = 221
ActiveWindow.ScrollRow = 223
ActiveWindow.ScrollRow = 226
ActiveWindow.ScrollRow = 234
ActiveWindow.ScrollRow = 245
ActiveWindow.ScrollRow = 253
ActiveWindow.ScrollRow = 262
ActiveWindow.ScrollRow = 274
ActiveWindow.ScrollRow = 281
ActiveWindow.ScrollRow = 291
ActiveWindow.ScrollRow = 296
ActiveWindow.ScrollRow = 304
ActiveWindow.ScrollRow = 317
ActiveWindow.ScrollRow = 332
ActiveWindow.ScrollRow = 351
ActiveWindow.ScrollRow = 359
ActiveWindow.ScrollRow = 366
ActiveWindow.ScrollRow = 370
ActiveWindow.ScrollRow = 378
ActiveWindow.ScrollRow = 384
ActiveWindow.ScrollRow = 393
ActiveWindow.ScrollRow = 399
ActiveWindow.ScrollRow = 406
ActiveWindow.ScrollRow = 412
ActiveWindow.ScrollRow = 416
ActiveWindow.ScrollRow = 423
ActiveWindow.ScrollRow = 429
ActiveWindow.ScrollRow = 440
ActiveWindow.ScrollRow = 450
ActiveWindow.ScrollRow = 457
ActiveWindow.ScrollRow = 463
ActiveWindow.ScrollRow = 471
ActiveWindow.ScrollRow = 480
ActiveWindow.ScrollRow = 491
ActiveWindow.ScrollRow = 508
ActiveWindow.ScrollRow = 518
ActiveWindow.ScrollRow = 529
ActiveWindow.ScrollRow = 539
ActiveWindow.ScrollRow = 554
ActiveWindow.ScrollRow = 569
ActiveWindow.ScrollRow = 582
ActiveWindow.ScrollRow = 597
ActiveWindow.ScrollRow = 613
ActiveWindow.ScrollRow = 622
ActiveWindow.ScrollRow = 624
ActiveWindow.ScrollRow = 626
ActiveWindow.ScrollRow = 630
ActiveWindow.ScrollRow = 635
ActiveWindow.ScrollRow = 649
ActiveWindow.ScrollRow = 668
ActiveWindow.ScrollRow = 688
ActiveWindow.ScrollRow = 715
ActiveWindow.ScrollRow = 739
ActiveWindow.ScrollRow = 757
ActiveWindow.ScrollRow = 770
ActiveWindow.ScrollRow = 779
ActiveWindow.ScrollRow = 791
ActiveWindow.ScrollRow = 804
ActiveWindow.ScrollRow = 821
ActiveWindow.ScrollRow = 836
ActiveWindow.ScrollRow = 849
ActiveWindow.ScrollRow = 864
ActiveWindow.ScrollRow = 880
ActiveWindow.ScrollRow = 891
ActiveWindow.ScrollRow = 900
ActiveWindow.ScrollRow = 914
ActiveWindow.ScrollRow = 923
ActiveWindow.ScrollRow = 936
ActiveWindow.ScrollRow = 944
ActiveWindow.ScrollRow = 917
ActiveWindow.ScrollRow = 895
ActiveWindow.ScrollRow = 872
ActiveWindow.ScrollRow = 849
ActiveWindow.ScrollRow = 827
ActiveWindow.ScrollRow = 811
ActiveWindow.ScrollRow = 702
ActiveWindow.ScrollRow = 685
ActiveWindow.ScrollRow = 668
ActiveWindow.ScrollRow = 643
ActiveWindow.ScrollRow = 624
ActiveWindow.ScrollRow = 611
ActiveWindow.ScrollRow = 594
ActiveWindow.ScrollRow = 579
ActiveWindow.ScrollRow = 571
ActiveWindow.ScrollRow = 567
ActiveWindow.ScrollRow = 565
ActiveWindow.ScrollRow = 561
ActiveWindow.ScrollRow = 558
ActiveWindow.ScrollRow = 554
ActiveWindow.ScrollRow = 550
ActiveWindow.ScrollRow = 546
ActiveWindow.ScrollRow = 544
ActiveWindow.ScrollRow = 539
ActiveWindow.ScrollRow = 537
ActiveWindow.ScrollRow = 533
ActiveWindow.ScrollRow = 531
ActiveWindow.ScrollRow = 526
ActiveWindow.ScrollRow = 520
ActiveWindow.ScrollRow = 516
ActiveWindow.ScrollRow = 512
ActiveWindow.ScrollRow = 508
ActiveWindow.ScrollRow = 507
ActiveWindow.ScrollRow = 505
ActiveWindow.ScrollRow = 503
ActiveWindow.ScrollRow = 497
ActiveWindow.ScrollRow = 488
ActiveWindow.ScrollRow = 476
ActiveWindow.ScrollRow = 463
ActiveWindow.ScrollRow = 448
ActiveWindow.ScrollRow = 435
ActiveWindow.ScrollRow = 425
ActiveWindow.ScrollRow = 412
ActiveWindow.ScrollRow = 399
ActiveWindow.ScrollRow = 387
ActiveWindow.ScrollRow = 376
ActiveWindow.ScrollRow = 368
ActiveWindow.ScrollRow = 361
ActiveWindow.ScrollRow = 349
ActiveWindow.ScrollRow = 338
ActiveWindow.ScrollRow = 329
ActiveWindow.ScrollRow = 321
ActiveWindow.ScrollRow = 313
ActiveWindow.ScrollRow = 308
ActiveWindow.ScrollRow = 298
ActiveWindow.ScrollRow = 285
ActiveWindow.ScrollRow = 274
ActiveWindow.ScrollRow = 264
ActiveWindow.ScrollRow = 259
ActiveWindow.ScrollRow = 249
ActiveWindow.ScrollRow = 240
ActiveWindow.ScrollRow = 221
ActiveWindow.ScrollRow = 215
ActiveWindow.ScrollRow = 211
ActiveWindow.ScrollRow = 209
ActiveWindow.ScrollRow = 206
ActiveWindow.ScrollRow = 204
ActiveWindow.ScrollRow = 200
ActiveWindow.ScrollRow = 198
ActiveWindow.ScrollRow = 188
ActiveWindow.ScrollRow = 183
ActiveWindow.ScrollRow = 175
ActiveWindow.ScrollRow = 171
ActiveWindow.ScrollRow = 166
ActiveWindow.ScrollRow = 160
ActiveWindow.ScrollRow = 154
ActiveWindow.ScrollRow = 147
ActiveWindow.ScrollRow = 137
ActiveWindow.ScrollRow = 130
ActiveWindow.ScrollRow = 126
ActiveWindow.ScrollRow = 120
ActiveWindow.ScrollRow = 115
ActiveWindow.ScrollRow = 111
ActiveWindow.ScrollRow = 107
ActiveWindow.ScrollRow = 105
ActiveWindow.ScrollRow = 101
ActiveWindow.ScrollRow = 98
ActiveWindow.ScrollRow = 96
ActiveWindow.ScrollRow = 94
ActiveWindow.ScrollRow = 92
ActiveWindow.ScrollRow = 88
ActiveWindow.ScrollRow = 84
ActiveWindow.ScrollRow = 81
ActiveWindow.ScrollRow = 77
ActiveWindow.ScrollRow = 75
ActiveWindow.ScrollRow = 67
ActiveWindow.ScrollRow = 63
ActiveWindow.ScrollRow = 60
ActiveWindow.ScrollRow = 54
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 45
ActiveWindow.ScrollRow = 41
ActiveWindow.ScrollRow = 35
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollRow = 5
ActiveWindow.ScrollRow = 3
ActiveWindow.ScrollRow = 1
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Pufferstand_S1_aktuell0!R1C1:R949C3").CreatePivotTable TableDestination:="" _
, TableName:="PivotTable1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable1").PivotFields("VarName")
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("TimeString")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields("VarValue"), "Summe von VarValue", xlSum
ActiveWorkbook.ShowPivotTableFieldList = False
Range("B5:E241").Select
Charts.Add
ActiveChart.SetSourceData Source:=Sheets("Tabelle1").Range("B5:E241")
ActiveChart.Location Where:=xlLocationAsNewSheet
ActiveChart.PlotArea.Select
ActiveChart.ChartType = xlLine
ActiveChart.Axes(xlCategory).Select
With ActiveChart.Axes(xlCategory)
.CrossesAt = 1
.TickLabelSpacing = 5
.TickMarkSpacing = 10
.AxisBetweenCategories = True
.ReversePlotOrder = False
End With
With ActiveChart.Axes(xlCategory)
.CrossesAt = 1
.TickLabelSpacing = 10
.TickMarkSpacing = 5
.AxisBetweenCategories = True
.ReversePlotOrder = False
End With

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Programmierung
03.11.2005 08:43:21
Susanne
Hallo Volker,
zu 1. Mit der Funktion Anzahl2 kannst du dir die letzte Zeile einer Datei anlisten lassen:
ANZAHL2(Tabelle1!$A:$A)-1 (das minus 1 bedeutet ich habe eine Überschriftszeile)
zu 2. Probiere es mal damit:
Application.ScreenUpdating = False
With Application.FileSearch
.NewSearch
.Filename = "*.csv"
.LookIn = "C:\Test"
If .Execute &gt 0 Then

Dim f
Dim i As Integer
Dim Mappe As Workbook
For Each f In .FoundFiles
i = i + 1
Application.StatusBar = (("Verarbeite ") & f)
Set Mappe = Workbooks.Open(f, UpdateLinks:=0)
Gruß
Susanne
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige