www.mikrocontroller.net

Forum: PC-Programmierung Visual Basic Excel Tabelle erstellen


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte mit Visual Basic eine Excel Tabelle erstellen und öffnen. 
Dabei möchte ich die Anzahl der Zeilen und Spalten sowie die Namen der 
Zeilen und Spalten (einfach Name0 bis NameX) vorgeben.

Wie ist das möglich? Ich muss dazu sagen, leider habe ich mit Visual 
Basic wenig Erfahrung. Ich würde mich aber sehr freuen, wenn ihr mir 
helfen könntet.

Vielen Dank schonmal
Michael

Autor: Klaus O. (owo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So könnte es gehen(VB5,6),rumprobieren mit den Objekten (Objektkatalog) 
hilft.

Private Sub Command1_Click()  ( Button auf Formular)
'Deklaration:
Dim wx As New Excel.Application, x As Worksheet

'Erstellen:
Set wx = New Excel.Application
wx.Workbooks.Add     ' vorhandene Datei öffnen: 
WX.Workbooks.Open("datei")
wx.Visible = True
'Manipulieren
Set x = wx.ActiveSheet
x.cells(1, 1) = "Test"  'x.cells(zeile,spalte)

'Speichern:
x.SaveAs filename:="C:Test.xls"

' Schließen:
Set wx = Nothing

End Sub

Es muß die MS Office Typbibliothek eingebunden sein.

Autor: Morrigan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da der Titel gut passt, nutze ich den vorhandenen Thread für meine Frage 
bzw. mein Problem:

Derzeit programmiere ich ("fortgeschrittene Anfängerin") mit der Visual 
Basic  2008 Express Edition eine Oberfläche, um auf eine 
Access-Datenbank zuzugreifen und die enthaltenen Daten auszuwerten. Nun 
muss ich die ausgewertete Daten in ein Excel-Sheet überführen.

Deswegen habe ich:
- den *Verweis auf Microsoft.Office.Interop.Excel* gesetzt
- das Ganze brav mit *Imports Microsoft.Office.Interop.Excel* importiert
- mit *Dim xls_Appl As New Microsoft.Office.Interop.Excel.Application* 
deklariert und initialisiert (getrennt habe ich das auch schon versucht)

Zum Dank erhalte ich folgende Mitteilung: /"Application" ist im 
Namespace "Microsoft.Office.Interop.Excel" nicht eindeutig"/

Woran kann das liegen bzw. was muss ich tun, um dieses Problem zu lösen?

Autor: Arc Net (arc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Test (ganz unten auf der Seite) funktioniert?
http://msdn.microsoft.com/de-de/library/microsoft....

Autor: thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
Um das excelobjekt in VB verwenden zu können, muss natürlich auch excel 
auf dem rechner installiert sein.
Wenn man das nicht sicherstellen kann ( ich exportiere Messwerte nach 
excel, aber auf dem erfassungsrechner ist kein excel installiert), dann 
gehts auch über ADO.
Einfach das Excelfile wie eine Datenbank öffnen.
Da gibt es zwar einige Besonderheiten beim sql syntax aber es geht 
problemlos.

Man sollte sich ein Templete in excel erstellen, so wie später mal das 
excelsheet aussehen soll, dann diese Vorlage in VB kopieren, öffnen und 
die Werte reinschreiben.

cu thomas

Autor: Morrigan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

zunächst einmal vielen Dank für die schnellen Antworten und die 
Hilfsbereitschaft!

Ja, Excel ist vorhanden, wie ich mittlerweile festgestellt habe, sogar 
in zwei verschiedenen Versionen.

Das Problem hat sich jedoch nach mehrmaligem Löschen und Neusetzen des 
Verweises, dem anschließenden Verzicht auf das Workbook-Objekt (ich 
hoffe, ich brauche das nicht doch noch?) und einer Nacht drüber schlafen 
quasi von selbst gelöst. Seltsam, aber zweckmäßig.

Das mit dem Template ist eine gute Idee, die werde ich wohl beherzigen!

Vielen Dank und viele Grüße
Morrigan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.