vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Aus einer VB.Net-App auf Excel zugreifen 
Autor: Earny
Datum: 03.09.20 10:09

Ich möchte aus meiner VB.Net-App auf Excel zugreifen. Dazu möchte ich zuerst Excel aus meiner App heraus starten und dann in Excel-Tabellen schreiben bzw. aus Excel-Tabellen lesen.

Bis Excel 2010 war zum Starten von Excel folgende Befehlsfolge ausreichend:

'Es ist kein Verweis erforderlich.
Dim Exc as Object 'Deklaration

Exc = GetObject(Pfad + Name der Datei) 'Späte Bindung
Exc.Application.visible = True 'Excel starten
Exc.Windows(1).visible = True 'Tabelle 1 sichtbar schalten

____________________________

Mit Excel 2013 hat sich der Aufwand erhöht:

Es muss ein Verweis auf die "Microsoft Excel V15.0 Object Library" angelegt sein (unter Projekteigenschaften/Verweise

Dim Exc As New Microsoft-Office.Interop.Excel.Application 'Deklaration

Exc.Workbooks.Open(Pfad + Name)
Exc.Visible = True
Exc.Windows(1).visible = True

___________________________

Wie sieht das beim Zugriff auf Excel 2016 und 2019 aus?
Ist es bei dem 2013er System geblieben? Dann sollte lediglich ein Verweis auf die V16.0 bzw. V17.0 Object Library genügen.
Ich kann das leider nicht testen, weil ich kein neueres Excel habe.

Besten Dank schon mal im voraus.

Beitrag wurde zuletzt am 03.09.20 um 10:13:01 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Aus einer VB.Net-App auf Excel zugreifen 
Autor: effeff
Datum: 03.09.20 13:56

Wenn Du ohne Early Binding arbeiten möchtest, kannst Du das immer noch tun...

Ich habe hier kein Excel, aber grundsätzlich sollte es so funktionieren:

Dim Excel As Object
 
Excel=GetObject("Excel.Application")
 
Dim Wb As Object=Excel.Workbooks.Open("d:\DeineDatei.xlsx")
 
Dim Ws As Object=WB.Sheets("Tabelle1")
 
Dim Rg as Object=WS.Range("A1")
 
Rg.Value="Irgendwas"
 
Wb.Save(True)
 
Rg=Nothing
Ws=Nothing
WB.Close
 
Wb=Nothing
 
Excel.Quit
 
Excel=Nothing
Damit schreibst Du in die Zelle A1 des Tabellenblattes "Tabelle1" den Wert "Irgendwas", speicherst und schließt Deine Excel-Datei und entlädst dann die Objekt-Variablen. Excel muss dazu nicht sichtbar sein.

EALA FREYA FRESENA

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Aus einer VB.Net-App auf Excel zugreifen 
Autor: Earny
Datum: 03.09.20 16:27

Die Excel-Tabelle muss bei mir direkt sichtbar sein, um alte und die aktuelle Eintragung kontrollieren zu können.

Beitrag wurde zuletzt am 03.09.20 um 16:29:00 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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