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

Per VB Daten aus Excel-ODBC-Abfrage aktualisieren

Frage Entwicklung

Mitglied: RedBullmachtfit

RedBullmachtfit (Level 1) - Jetzt verbinden

24.08.2009, aktualisiert 09:04 Uhr, 11125 Aufrufe, 4 Kommentare

Mithilfe eines VB-Programms oder VBA-Makro sollen in Excel die Daten einer ODBC-Abfrage aktualisiert werden.

Hallo! Ich möchte etwa 10 Excel-Dateien mit mehreren Tabellen regelmäßig aktualisieren.
Die enthaltenen Daten jeder Tabelle stammen aus einer ODBC-Abfrage. Es muss jedoch jede Tabelle einzeln aktualisiert werden,
da unser ERP-System sonst wegen mangelnder Lizenzen meckert.
Also, Excel-Datei öffnen, Tabelle 1 aktualisieren, wenn fertig Tabelle 2 aktualisieren usw.
Ob das ganze mit VB6, VB.NET oder als VBA funktioniert ist eigentlich egal. Wär halt super, wenn das ganze noch automatisiert abläuft.
Ach ja, die Tabellen haben verschiedene Namen (Artikel, Kunden usw.). Ich verwende Office 2007 und Windows XP.
Danke schonmal für eure Hilfe!
Mitglied: TsukiSan
24.08.2009 um 09:30 Uhr
Hallo Scarabaeus,

um was für eine Datenbank genau handelt es sich denn? Borland Paradox, Filemaker, Windows Access, IBM DB2 etc. etc. ????

Um so ein automatisiertes Programm zu erstellen, benötigt man schon etwas mehr genauere Vorstellungen, was genau gelesen/geschrieben werden soll und wohin soll das passieren.
Wie man mit VB6 oder VBS mit Exceldateien arbeitet ist sicher kein Problem, dies hier kurz aufzuführen, aber damit ist die Sache ja noch längst nicht getan.
Beispiel für VB6, wie man in ein Excelfile Daten einträgt:

01.
Dim objXL As Object 
02.
     
03.
Set objXL = CreateObject("Excel.Application") 
04.
objXL.Workbooks.Add 
05.
objXL.visible = false 
06.
 
07.
'trägt dir die aktuelle Zeit in die erste Spalte/Reihe ein 
08.
objXL.cells(1, 1).Value = Time 
09.
 
10.
objXL.visible = true 
11.
 
12.
set objXL = nothing
so funktioniert das auch mit VBS.
Aber ohne genaueren Details ist es schwierig, ein angepasstes Programm zu schreiben. In wieweit sind deine Kentnisse in VB?
Reichen dir Programmschnipsel?

Gruß
Tsuki
Bitte warten ..
Mitglied: RedBullmachtfit
25.08.2009 um 10:21 Uhr
Danke für deinen Beitrag, wusste nicht, dass du dass so genau wissen musst ;)
Es handelt sich soweit ich weiß um eine DB2 (D++?!) Datenbank. Wie bekomme ich das heraus?
Ich habe eine Abfrage mit Query erstellt und hole mir diese Daten immer in Excel per "Daten aktualisieren".

VB sollte einfach nur nacheinander die Daten Tabelle für Tabelle aktualisieren. Das wäre schon klasse!!!
Wenn VB anschließend noch jedes Excelfile im Ordner genauso durcharbeiten würde wäre das noch besser.
Gruß
Bitte warten ..
Mitglied: TsukiSan
26.08.2009 um 03:30 Uhr
Hallo Scarabaeus

ein maßgeschneitertes Programm werde ich dir nicht liefern können, da mir die Zeit fehlt. Aber ich - und das Forum auch - können dir die Schnipsel liefern, mit denen du dir dein Programm zusammenbauen kannst.
Ich würde sagen, wir bleiben bei VBS, dann brauchst du keine Developer zu installieren.
Du weißt sicher selbst, wie deine Datenbank aufgebaut ist.

Beispiel:
Kopf: PC , User, BS
Erste Zeile:Dell,User1,XP_Prof
Zweite Zeile:Dell,User2,Vista
Dritte Zeile:Dell,User3,W2k
usw.

Dann lesen wir die Datenbank aus und tragen die Werte in ein neues Excelsheet:
01.
Dim MeineDatenbasis 
02.
i = 1 
03.
 
04.
Dim objXL 
05.
Set objXL = WScript.CreateObject("Excel.Application") 
06.
objXL.Workbooks.Add 
07.
 
08.
 
09.
Set FSO = CreateObject("Scripting.FileSystemObject") 
10.
Set MyDB = FSO.OpenTextFile("C:\MeineDatenbank.DB2", 1) 
11.
 
12.
Do Until MyDB.AtEndOfStream  
13.
    MeineDatenbasis = MyDB.ReadLine 
14.
    MeineDatenbasis = Split(MeineDatenbasis , ",") 
15.
     
16.
    objxl.cells(i,1) = MeineDatenbasis(0) 
17.
     
18.
    For x = 1 to Ubound(MeineDatenbasis) 
19.
        objxl.cells(i,x + 1) = MeineDatenbasis(x) 
20.
    Next 
21.
 
22.
    i = i + 1 
23.
Loop 
24.
MyDB.close 
25.
 
26.
objxl.visible = true 
27.
 
28.
set objxl = nothing 
29.
set MyDB = nothing 
30.
set FSO = nothing
Somit werden Daten von einer Datei nach Excel geschrieben.
Aber wie gesagt, du mußt wissen, welche Daten genau benötigt werden
und in welchem Format deine Datenbank ist. Mein Beispiel bezieht sich auf eine reine Textdatei als Datenbank.
Und wenn du dein Programm später selbst geschrieben hast, dann hast du auch etwas, auf was du stolz sein kannst

Gruß
Tsuki
Bitte warten ..
Mitglied: RedBullmachtfit
26.08.2009 um 11:47 Uhr
Danke für deine Hilfe!
Ich bin ehrlich und dachte, dass sich einfach der Klick auf "Daten aktualisieren" für jede Tabelle automatisieren lässt.
Ich werde mich dort mal durcharbeiten!

Gruß
Scarabaeus
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
VB for Applications
gelöst VBA Excel Recordset - Abfrage auf SQL-Server (4)

Frage von Aximand zum Thema VB for Applications ...

VB for Applications
Excel VBA Sortierung von Daten (5)

Frage von easy4breezy zum Thema VB for Applications ...

Microsoft Office
gelöst Aus Outlook 2013 Daten aus Tabellenfeldern in Excel übertragen (9)

Frage von ich2110 zum Thema Microsoft Office ...

VB for Applications
Bestimmte Daten aus eine CSV-Datei in eine Excel-Tabelle importieren (2)

Frage von MariaElena zum Thema VB for Applications ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...