Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Dateien im Ordner öffnen, x suchen, Zeile in Blatt kopieren

Mitglied: Firewalker

Firewalker (Level 1) - Jetzt verbinden

20.08.2013, aktualisiert 19:22 Uhr, 1934 Aufrufe, 3 Kommentare

Hallo Zusammen, habe versucht dieses Script ein wenig anzupassen. Leider scheinen meine Vba Kenntnisse noch nicht ganz auszureichen.
('bis hier hin ok) läuft der Code richtig durch wenn die End if und Next richtig gesetzt wären. Diese sind durch viel hin und her versuchen auch durcheinander geraden.
Wäre toll wenn ihr mir helfen könnt.

01.
Sub Zusammenfassen2() 
02.
 
03.
Dim i As Long 
04.
 
05.
'' Testpath 
06.
Const sSourcePath = "c:\test\" 'Ordner der Auswertedateien - bitte anpassen 
07.
Set wbGes = ActiveWorkbook 'aktuelle Mappe und ... 
08.
Set wsZiel = ActiveWorkbook.ActiveSheet '... aktuelle Tabelle zwischenspeichern 
09.
Set fso = CreateObject("Scripting.FileSystemObject") 
10.
Z = 2 'ab Zeile 2 in der Sammeltabelle eintragen 
11.
sNamen = "#" 'Variable zum Sammeln der Namen vorbelegen 
12.
Application.ScreenUpdating = False 'während der folgenden Aktionen Excel-Bildschirm "einfrieren"; diese Zeile kann auch auskommentiert / entfernt werden 
13.
For Each oFile In fso.GetFolder(sSourcePath).Files 'alle Dateien des Auswerteordners durchgehen 
14.
If LCase(fso.GetExtensionName(oFile.Name)) = "xls" Then 'nur .xls-Dateien bearbeiten; falls "xlsx" bitte anpassen; nur Kleinbuchstaben verwenden 
15.
     
16.
    Set wbQuellDatei = Application.Workbooks.Open(oFile.Path) 'Auswerttedatei öffnen 
17.
    With ActiveWorkbook.Worksheets(1) 'Daten aus der ersten Tabelle der Auswertedatei entnehmen 
18.
    ZielZeile = Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile ermitteln 
19.
    For i = 9 To ZielZeile ' Bereich von 9 bis letzte Zeile 
20.
     If .Cells(i, 15) = "X" Then ' Wenn O zeile = x dann 
21.
          MsgBox " Gefunden" ' nur als test hier !!! 
22.
             
23.
         Wert = Rows(i).Copy     ' bis hier hin OK 
24.
 
25.
            wsZiel.Cells(Z, i).Paste    '... einfügen ( falscher Befehl für eine Row ? ) 
26.
         
27.
End If    'falsch platziert? 
28.
Next      ' falsch plaziert ? 
29.
              Z = Z + 1 'Zeilennummer der Zieltabelle für das nächste Einfügen erhöhen 
30.
              
31.
End If #ggf. 'auch falsch platziert ? 
32.
Next ' falsch platziert ?  
33.
 
34.
        wbQuellDatei.Close 'Datei schließen 
35.
   
36.
    
37.
 
38.
End With 
39.
 
40.
Application.ScreenUpdating = True 'Excel-Bildschirmanzeige wieder "auftauen" ;-) 
41.
wsZiel.Activate 'zur Sicherheit Zieltabelle aktivieren 
42.
wbGes.Save 'Sammeldatei speichern 
43.
MsgBox "Fertig." 
44.
End If 
45.
 
46.
 
47.
End Sub
Mitglied: bastla
20.08.2013 um 19:27 Uhr
Hallo Firewalker!

End With sollte nicht in Zeile 38, sondern in Zeile 30 stehen - wenn Du konsequent alle Blöcke (hier: For, If und With) einrückst, ist das leichter zu erkennen ...
Bitte warten ..
Mitglied: Firewalker
20.08.2013, aktualisiert um 19:54 Uhr
Hallo bastla.
Ok habe es so verschoben und Zeile 44 Enf if raus genommen. Jetzt läuft das Script schon mal wieder an.
Jetzt kommt der Fehler in Zeile 25. sobald ein X gefunden wurde.
Was soll er tun: Bein finden von X in Spalte O die gesammte Zeile kopieren ( alternativ wäre auch a-o möglich) und in wsZiel kopieren. Liegt es dort am i ?
Und warum ist Wert definert, den rufe ich doch gar nicht wieder auf ?
Bitte warten ..
Mitglied: Firewalker
20.08.2013 um 21:25 Uhr
Habe es glaube ich hinbekommen.
01.
Sub Zusammenfassen2() 
02.
ActiveWorkbook.Worksheets(1).Range("A2:O30000").ClearContents 
03.
Dim i As Long 
04.
 
05.
'' Testpath 
06.
Const sSourcePath = "c:\test\" 'Ordner der Auaswertedateien - bitte anpassen 
07.
Set wbGes = ActiveWorkbook 'aktuelle Mappe und ... 
08.
Set wsziel = ActiveWorkbook.ActiveSheet '... aktuelle Tabelle zwischenspeichern 
09.
Set fso = CreateObject("Scripting.FileSystemObject") 
10.
Z = 2 'ab Zeile 2 in der Sammeltabelle eintragen 
11.
sNamen = "#" 'Variable zum Sammeln der Namen vorbelegen 
12.
Application.ScreenUpdating = False 'während der folgenden Aktionen Excel-Bildschirm "einfrieren"; diese Zeile kann auch auskommentiert / entfernt werden 
13.
    For Each oFile In fso.GetFolder(sSourcePath).Files 'alle Dateien des Auswerteordners durchgehen 
14.
        If LCase(fso.GetExtensionName(oFile.Name)) = "xls" Then 'nur .xls-Dateien bearbeiten; falls "xlsx" bitte anpassen; nur Kleinbuchstaben verwenden 
15.
        Set wbQuellDatei = Application.Workbooks.Open(oFile.Path) 'Auswerttedatei öffnen 
16.
             With ActiveWorkbook.Worksheets(1) 'Daten aus der ersten Tabelle der Auswertedatei entnehmen 
17.
             ZielZeile = Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile ermitteln 
18.
                    For i = 9 To ZielZeile ' Bereich von 9 bis letzte Zeile 
19.
                             If .Cells(i, 15) = "X" Then ' Wenn O zeile = x dann 
20.
                                      
21.
       
22.
         wert = Rows(i).Copy ' bis hier hin OK 
23.
             wsziel.Rows(Z).PasteSpecial   '... einfügen 
24.
          Z = Z + 1 'Zeilennummer der Zieltabelle für das nächste Einfügen erhöhen 
25.
                  End If 
26.
                    Next 
27.
               
28.
            End With 
29.
        End If 
30.
    Next 
31.
     
32.
  wbQuellDatei.Close 'Datei schließen 
33.
 
34.
Application.ScreenUpdating = True 'Excel-Bildschirmanzeige wieder "auftauen" ;-) 
35.
wsziel.Activate 'zur Sicherheit Zieltabelle aktivieren 
36.
wbGes.Save 'Sammeldatei speichern 
37.
MsgBox "Fertig." 
38.
 
39.
End Sub
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Gleiche Zeile in allen Blättern auswählen

gelöst Frage von IGEL.DanielMicrosoft Office4 Kommentare

Hallo liebe Community, ich werkel aktuell an einem Excel-Sheet inclusive VBA Programmierung. Jetzt versuche ich folgendes Problem zu lösen: ...

Microsoft Office

Zelle suchen - nebenstehende Zellen in ein neues Blatt kopieren

Frage von GarantBerlinMicrosoft Office2 Kommentare

Hallo liebe Gemeinde, ich bin ziemlicher Neuling und bräuchte aber mal dringend euren Rat, folgendes: wenn in der Zelle ...

Batch & Shell

Zeile von einer Bat-Datei in eine andere kopieren

gelöst Frage von Nick.BBatch & Shell6 Kommentare

Ich wollte eine Zeile von einer Bat-Datei in eine andere schreiben, dies habe ich auch mit echo geschafft aber ...

Batch & Shell

Text Datei öffnen. Wert ändern . in anderen Ordner kopieren

gelöst Frage von dax4funBatch & Shell5 Kommentare

Hallo hoffe es ist noch wer da und nicht alle im Urlaub :) Habe einen Ordner wo hin und ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 2 TagenWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 2 TagenAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 3 TagenHumor (lol)5 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 3 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Router & Routing
Router auf Orginal Firmware zurück flashen mit Tftpd
Frage von ILeonardRouter & Routing21 Kommentare

Hallo, Ich habe zwei Router, einmal TP-Link 841n v11 und TP-Link 940N v5. Ich wollte fragen, ob jemand mir ...

Router & Routing
WRT keine Verbindung zum Web Interface
gelöst Frage von ILeonardRouter & Routing18 Kommentare

Hallo, Ich habe einen TP-Link WR841n mit wrt geflasht, das Problem ist ich kann mich mit 192.168.1.1 nicht verbinden. ...

Windows Server
Standortvernetzung zu einem Strato VServer (Windows)
Frage von matzefratze81Windows Server10 Kommentare

Moin, ich komme aus einem Enterprise-Umfeld und habe den Fehler gemacht, dass ich mich auf ein kleines Unternehmen eingelassen ...

TK-Netze & Geräte
Telefonie zweier Fritzboxen mit je eigenem DSL Anschluss verbinden
Frage von hannsgmaulwurfTK-Netze & Geräte10 Kommentare

Hallo zusammen, ich habe hier einen Haushalt mit zwei Anschlüssen. Einmal ISDN, einmal DSL. An jedem Anschluss hängt eine ...