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

Über VBA Makro in Excel DOS Befehle ausführen

Frage Microsoft Microsoft Office

Mitglied: Shaggy84

Shaggy84 (Level 1) - Jetzt verbinden

18.07.2007, aktualisiert 20.07.2007, 28402 Aufrufe, 8 Kommentare

Guten Morgen

Ich habe folgendes Problem. Ich möchte gerne in Excel ein VBA Makro schreiben, welches mir ermöglicht mehrere DOS Befehle nacheinander aus zu führen.

Momentan mache ich dies über CMD, es soll aber nun in Excel automatisiert werden, da ich dort die Ergebnisse dieser Befehle, eine TXT, später importiere.

Grüße, Shaggy84
Mitglied: 8644
18.07.2007 um 09:00 Uhr
Hi,

warum denn keine Batch-Datei? Hier kannst du genauso mitloggen!

Psycho
Bitte warten ..
Mitglied: bastla
18.07.2007 um 09:14 Uhr
Hallo Shaggy84!

In VBA gibt es dafür "Shell", allerdings würde ich auch, so wie Psycho Dad, eine Batchdatei empfehlen, und sei es nur wegen des zeitlichen Ablaufes: Mit "Shell" kannst Du zwar das Programm starten, aber es wird nicht gewartet, bis dieses zu Ende ist, sondern in VBA gleich die nächste Anweisung ausgeführt ...

Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
19.07.2007 um 13:46 Uhr
Das stellt kein Problem dar. Es soll nur eine kleine Anweisung ausführen:

01.
'MSINFO32 Report erstellen 
02.
Dim x 
03.
x = Shell("cmd /c winmsd.exe /report c:\msinfo32.txt /categories +SystemSummary+ComponentsStorage")
Jetzt soll die Befehlzzeile allerdings noch um das Attribut
01.
 /computer 123xyz 
erweitert werden.
Dieses Attribut "123xyz" würde ich gerne direkt einer Excel Zelle entnehmen. Kann mir jemand helfen, wie ich so etwas in den Code implementiere?
Bitte warten ..
Mitglied: bastla
19.07.2007 um 13:55 Uhr
Hallo Shaggy84!

Entweder ín eine Variable schreiben oder gleich direkt so:
01.
x = Shell("cmd /c winmsd.exe /report c:\msinfo32.txt /categories +SystemSummary+ComponentsStorage /" & Sheets("Tabelle1").Range("B9").Value)
Anstelle von Range() kannst Du auch Cells(Zeile, Spalte) verwenden.

Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
19.07.2007 um 15:05 Uhr
Danke bastla, funktioniert wunderbar!

kannst du mir noch verraten, wie ich in VB Skript mehrere Eingaben im gleichen Fenster nacheinander ausführen kann?

Es geht um den Bewnutzerwechsel, die anschließende Eingabe des Passwortes, und das ausführen eines PRogrammes, aber sieh am besten selbst mal kurz hier:
01.
'MSINFO32 Report erzeugen 
02.
Dim x, y, z 
03.
x = Shell("runas /user:" & Sheets("Auswertung").Range("A29").Value & " cmd") 
04.
y = Shell(Sheets("Auswertung").Range("B29").Value) 
05.
z = Shell("/c winmsd.exe /computer " & Sheets("Auswertung").Range("C29").Value & " /report c:\msinfo32.txt /categories +SystemSummary+ComponentsStorage")
Die erste "x" Zeile wird noch ausgehührt. Danach wird im Fenster die Eingabe des Passwortes verlangt. Dieses möchte ich mit der "y" Zeile übergeben und anschließend "z" ausführen. Wenn ich nur x'se eingebe funktioniert es auch nicht und in einer Zeile kann ich es nicht schreiben.

Wo liegt der Trick?
Bitte warten ..
Mitglied: bastla
20.07.2007 um 09:37 Uhr
Hallo Shaggy84!

Der Trick wurde eigentlich oben schon genannt: eine Batch-Datei.

In der von Dir beschriebenen Form rufst Du 3 verschiedene Shells auf, die nix miteinander zu tun haben. Wenn Du es vorweg schaffst, alle erforderlichen Infos per VBA zu erhalten und daraus eine einzige Kommandozeile zu bauen, kann es klappen - einfacher ist es, per "Shell" nur eine einzelne Batchdatei aufzurufen, in welcher der Rest abgehandelt wird.

Ein manchmal auch funktionierender Ausweg könnte noch die Verwendung von "&" sein, um CMD-Befehle zu verknüpfen.

Grüße
bastla
Bitte warten ..
Mitglied: Shaggy84
20.07.2007 um 15:16 Uhr
Ich schau mal.

Es sollte im VBA Code bleiben, da ich direkt dort auf Excel Zellen zugreife. Wüsste net wie ich das aus einer Batch Datei machen sollte.

Ich find schon noch ne Lösung die ich dann auch hier präsentiere ;)
Danke für die schnelle Antworten
Bitte warten ..
Mitglied: bastla
20.07.2007 um 18:08 Uhr
Hallo Shaggy!

Einer Batchdatei kannst Du beim Aufruf ja eine Menge Parameter (die ausgelesenen Tabellenwerte) mitgeben ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
VB for Applications
EXCEL VBA 2013 bei inaktiven Fenster Makro ausführen
gelöst Frage von Just4fun1990VB for Applications2 Kommentare

Hallo Administrator.de User, dieses mal kein Problem sondern eine Frage :) . Ist es irgendwie möglich, wenn das Excel ...

Microsoft Office
Makro automatisch ausführen bei Zellenänderung VBA
Frage von firelessMicrosoft Office4 Kommentare

Hallo Community, ich habe ein Makro, dass mir automatisch die Zeilenhöhe mit Zeilenumbruch anpasst, wenn der Text zu lang ...

Microsoft Office
Excel Makro VBA Sortierung nach Spaltennamen
gelöst Frage von easy4breezyMicrosoft Office3 Kommentare

Hi Leute, ich habe mich hier schon eingelesen und auch im Internet, aber irgendwie komme ich zu keiner Lösung ...

Microsoft Office
VBA Makro Mails aus Excel versenden
gelöst Frage von ExxiStMicrosoft Office7 Kommentare

Guten Tag zusammen, folgendes Problem treibt mich schon seit Tagen zur Verzweiflung: Aus einer Excel Datei werden durch folgendes ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 19 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement15 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Windows XP
Windows XP Aktivieren geht nicht
Frage von tetikmiroWindows XP13 Kommentare

Hallo Ich habe einen Windows XP mit einen vCenter Converter umgezogen auf eine ESXI. Soweit funktioniert dies auch ohne ...