Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Massenänderung einer Zelle in etlichen Dokumenten, die sich alle in einem Sub-Ordner innerhalb eines Ordners befinden (60plusx Dateien in 60 Ordnern, die sich in einem Ordner befinden).

Frage Microsoft Microsoft Office

Mitglied: Jevira

Jevira (Level 1) - Jetzt verbinden

18.12.2012 um 15:14 Uhr, 4343 Aufrufe, 8 Kommentare

Hallo zusammen

Ich soll eine Zelle in jedem Excelfile mit einer Formel versehen. Alle Excelfiles sind gleich aufgebaut und die fragliche Zelle ist überall die M25 im Sheet "Start". Darin soll eine Wennformel reinkommen, bei allen.

Das Problem ist, dass sich alle Dateien in verschiedenen Ordnern befinden, also quasi so:

ORDNER A
....ORDNER A.1 (also erster Ordner im Ordner A)
..........Datei A.1.1 (das ist die fragliche Datei)
....ORDNER A.2 (also erster Ordner im Ordner A)
..........Datei A.2.1 (das ist die fragliche Datei)

etc...

Hat jemand einen Vorschlag, wie das zu lösen ist?

Grüsse und vielen Dank
Mitglied: bastla
18.12.2012 um 15:56 Uhr
Hallo Jevira und willkommen im Forum!

Die Problemstellung ähnelt jener im Beitrag Excel - Suchen und Ersetzen in verschiedenen Dateien ...

Grüße
bastla
Bitte warten ..
Mitglied: Jevira
18.12.2012 um 17:10 Uhr
Hi Bastla

Danke für die Begrüssung und den guten Verweis!

Wie müsste ich den Code anpassen, um nur die Zelle M25 quasi mit der Wennformel zu überschreiben?

Ich bin leider totaler Laie was das angeht und wäre superfroh, wenn du mir weiterhilfst.

Vielen Dank und beste Grüsse
Jevira
Bitte warten ..
Mitglied: bastla
19.12.2012, aktualisiert um 12:18 Uhr
Hallo Jevira!

Da Du die gewünschte Formel nicht genannt hast, nur das (ungetestete) Grundgerüst als Batch:
01.
@echo off & setlocal 
02.
set "Ordner=D:\XL" 
03.
set "Dateien=*.xlsx" 
04.
 
05.
set "R=%temp%\ReplaceInXL.vbs" 
06.
 >%R% echo Set oXL=CreateObject("Excel.Application") 
07.
>>%R% echo oXL.Workbooks.Open WScript.Arguments(0) 
08.
>>%R% echo oXL.Worksheets("Start").Range("M25").FormulaLocal = "=HIER FORMEL EINSETZEN" 
09.
>>%R% echo oXL.ActiveWorkbook.Close True 
10.
>>%R% echo oXL.Application.Quit 
11.
 
12.
pushd "%Ordner%" 
13.
for /f "delims=" %%i in ('dir /s /b /a-d %Dateien%') do ( 
14.
    echo Bearbeite "%%i" 
15.
    cscript //nologo "%R%" "%%i" 
16.
17.
popd 
18.
pause
Den Pfad in Zeile 2 und natürlich die Formel in Zeile 8 musst Du noch anpassen. Zum Testen bitte nur mal 2 oder 3 Dateien verwenden ...

Grüße
bastla
Bitte warten ..
Mitglied: Jevira
19.12.2012 um 11:14 Uhr
Hi bastla

Danke, sieht interessant aus. Ich habe jetzt ein paar Testordner und -dateien eröffnet, weiss aber nicht, wo ich diesen Code einfügen soll. Einfach als normales Makro? Wenn ich das mache, kommt dann eine Fehlermeldung "Fehler beim Kompilieren; Erwartet: Zeilennummer oder Sprungmarke oder Anweisung oder Anweisungsende.

Entschuldige meine katastrophalen, nicht vorhandenen Kenntnisse.


LG
Jevira
Bitte warten ..
Mitglied: bastla
19.12.2012 um 12:17 Uhr
Hallo Jevira!

Das ist (wie oben angemerkt) ein Batch - daher mit dem Datentyp ".bat" oder ".cmd" speichern und per Doppelklick (oder besser aus CMD) ausführen ...

Grüße
bastla
Bitte warten ..
Mitglied: Jevira
19.12.2012 um 12:50 Uhr
Hey,

Ok, habs jetzt geschafft, es mal als .bat zu speichern und auszuführen. Nur führt es nicht zum gewünschten Ergebnis (es passiert nichts in den Files). Eine Fehlermeldung oder so kommt nicht.

Grüsse
J
Bitte warten ..
Mitglied: bastla
19.12.2012, aktualisiert um 14:24 Uhr
Hallo Jevira!

Sollte es in der geheimen Formel, die Du einfügen willst, Anführungszeichen geben, musst Du diese verdoppeln - also etwa:
>>%R% echo oXL.Worksheets("Start").Range("M25").FormulaLocal = "=WENN(M23>0;""OK"";""Fehler"")"
Grüße
bastla
Bitte warten ..
Mitglied: Jevira
19.12.2012 um 14:56 Uhr
Du bist top, bastla! Kann man bei dir Nachhilfe nehmen? Hat beim Testlauf funktioniert, werde es gleich beim "Richtigen" versuchen! Danke nochmals!
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Windows 7
Ordner Windows wird auf Netzlaufwerk angelegt (1)

Frage von blackhawk17 zum Thema Windows 7 ...

Microsoft Office
gelöst Excel: Einzelne Zeilen einer mehrzeiligen Zelle auslesen (3)

Frage von Booster07 zum Thema Microsoft Office ...

Batch & Shell
gelöst Nach bestimmten Ordner namen suchen und in einem anderem Pfad kopieren (8)

Frage von erdgnrft zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (14)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

Viren und Trojaner
Wie werde ich den Mist "fanli90" wieder los? (12)

Frage von Taumel zum Thema Viren und Trojaner ...