| |
VB Skript (VBS)Excel Datei mit ADO ändern | | | Autor: Tischa | Datum: 24.01.12 21:48 |
| Hallo,
ich suche schon seit einiger Zeit das Netz nach einer Möglichkeit ab, mit eimem ADO Zugriff die Zelle A7 in einer Excel-Datei zu ändern. Leider bin ich scheinbar zu dumm die Lösung zu finden. Ich kann leider nur VBS benutzen.
Über Hilfe würde ich mich freuen. | |
Re: Excel Datei mit ADO ändern | | | Autor: Franki | Datum: 24.01.12 22:30 |
| Hallo,
wie sprichst du denn Excel überhaupt an? (Code)
Ich mache das z.B. so:
Set wb = xlapp.Workbooks.Open(ExcelDatei)
Set ws = wb.Worksheets(1)
wb.Sheets("IrgendeineTabelle").Activate
' und dann für die einzlne Zelle z.B.
ws.Range("A7").Value = "DeinText" Das funktioniert hervorragend auch ohne ADO
Über ADO ist das ja sozusagen ein Recordset, also ähnlich einer Datebank. Aber auch da kannst du einzelne Felder gezielt ansprechen. Aber ohne Code, keine Ahnung, was du da für Tipps brauchen könntest.
Gruß
Frank | |
Re: Excel Datei mit ADO ändern | | | Autor: Tischa | Datum: 24.01.12 23:29 |
| Hallo Franki,
Set oAdoConnection = CreateObject("ADODB.CONNECTION")
sAdoConnectString = "Provider=Microsoft.ACE.OLEDB.12.0; Extended Properties='Excel 12.0 Xml;HDR=NO;IMEX=1';Data Source=" & sPfad
oAdoConnection.Open sAdoConnectString
die Problematik ist ja gerade das Deine Möglichkeit nicht funktioniert. Es geht nur über ADO. | |
Re: Excel Datei mit ADO ändern | | | Autor: Franki | Datum: 24.01.12 23:59 |
| Hallo,
na ja, dass meine Möglichkeit bei dir nicht funktioniert sei mal dahin gestellt, bei mir funktioniert das hervorragend und das schon seit Excel-Uralt, glaube so ab Excel/Office 97.
Allerdings habe ich meinen Code nie so geschrieben, dass er nur für eine bestimmte Version funktioniert. So etwas wie bei dir 12.0 im Code gab es bei mir nie, schon gar nicht bei Sachen die unter allen Excel Versionen gleich sind.
Wenn es keine Notwendigkeit gibt auf eine bestimmte Version zu prüfen, dann sollte man das allgemein halten, da man ja nie weiß ob und wann der User welche Version verwendet und man einfach nicht ständig neu programmieren muss wenn einen neue Version auf den Markt kommt.
Schwierigkeiten gibt es unabhänig von der Office Version eigentlich in letzter Zeit bzw. "nach XP" nur damit, dass es an den Rechnten fehlt um eine Datei beschreiben zu können. Aber das sind ja inzwischen auch Grundlagen die man kennt bzw. die User wissen das auch so ganz langsam wohin sie ihre Dateien speichern müssen.
Warum machst du das nicht einfach über normale Automation unabhängig von der Version des anzusprechenden Office Programms bzw. dessen Dateityp?
Gruß
Frank | |
Re: Excel Datei mit ADO ändern | | | Autor: Tischa | Datum: 25.01.12 06:12 |
| Hallo,
die Lösung von Dir ist mir schon bekannt, unter einer "Normalen" Umgebung läuft es auch.
Leider habe ich fur dieses Skript keine normale Windows Umgebung. Es soll in einer Server-Umgebung laufen in der keine GUI vorhanden ist.Das heist Excel kann nicht gestartet werden. Für Deine Lösung wirs aber Excel im hintergrund benötigt.
Gruß
Klaus | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevOutBar 4.0
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|