Benutzer mit den meisten Antworten
[Gelöst] Datensatz aus Access-Datenbank in Word-Tabelle einfügen

Frage
-
Guten Tag,
Ich habe ein Word Add In erstellt, welche auf ein Windows Form Element zugreift. In dieser Windows Form kann ich mir bequem in einer ListBox bestimmte Daten meiner Access-Datenbank anzeigen lassen. Das geschieht im Eigenschaften Fenster unter Data Source.
Nun habe ich in C# eine Methode geschrieben, welche in einem Button click Event aufgerufen wird. Dadurch wird zu einer existierenden Word-Tabelle eine Zeile eingefügt. Nun hätte ich es sehr gerne, dass nicht nur eine leere Zeile zur Tabelle hinzugefügt wird, diese Word-Tabellenzeile soll auch die momentan in der ListBox ausgewählten Daten der Datenbank enthalten.
In der Windos Form hat VisualStudio mir automatisch folgenden Code generiert:
private void Form1_Load(object sender, EventArgs e) { // TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.Tabelle1". Sie können sie bei Bedarf verschieben oder entfernen. this.tabelle1TableAdapter.Fill(this.database1DataSet.Tabelle1); }
Nur klappt das irgendwie nicht in der "ThisAddIn.cs" Klasse, in der die Rows der Word-Tabelle erzeugt werden.Vielleicht gibt es einen einfachen und schnellen Weg das zu realisieren.
Vielen Dank für Hilfe, Tipps etc.
Grüße!
- Bearbeitet Matthias212 Dienstag, 10. Januar 2012 16:46
Antworten
-
ich weiß es nicht, ob eine Methode gibt es, die Daten aus dem Formular direkt in eine Tabelle in Word Dokument einzufügen, aber man kann einfach in der Tabelle:- eine neue Zeile erzeugen- die Daten aus dem Formular in die Tabelle einfügen, Zelle für Zelle
Hier den Code:
Microsoft.Office.Interop.Word.Application w; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { w = Globals.ThisAddIn.Application; ...
} ... private void button1_Click(object sender, EventArgs e) { Microsoft.Office.Interop.Word.Document d = w.ActiveDocument; Microsoft.Office.Interop.Word.Table t = d.Tables.Add(d.Range(Type.Missing, Type.Missing), 1, 3, Type.Missing, Type.Missing); t.Cell(1, 1).Range.Text = "ID"; t.Cell(1, 2).Range.Text = "Untersuchung"; t.Cell(1, 3).Range.Text = "Preis"; } private void button2_Click(object sender, EventArgs e) { Microsoft.Office.Interop.Word.Document d = w.ActiveDocument; Microsoft.Office.Interop.Word.Table t = d.Tables[1]; Microsoft.Office.Interop.Word.Row r = t.Rows.Add(Type.Missing); r.Cells[1].Range.Text = listBox1.Text; r.Cells[2].Range.Text = textBox1.Text; r.Cells[3].Range.Text = textBox2.Text; }
Viele Grüße,Bogdan
Ich bin gerne bei den Foren. Es kommt von Herzen. Es wird aber keine implizite oder sonstige Garantie für die geposteten Antworte / Informationen gewährt. Hier auch die Forenregeln.- Bearbeitet Bogdan Petru Roiu Dienstag, 10. Januar 2012 10:05
- Als Antwort markiert Matthias212 Dienstag, 10. Januar 2012 16:46
Alle Antworten
-
ich weiß es nicht, ob eine Methode gibt es, die Daten aus dem Formular direkt in eine Tabelle in Word Dokument einzufügen, aber man kann einfach in der Tabelle:- eine neue Zeile erzeugen- die Daten aus dem Formular in die Tabelle einfügen, Zelle für Zelle
Hier den Code:
Microsoft.Office.Interop.Word.Application w; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { w = Globals.ThisAddIn.Application; ...
} ... private void button1_Click(object sender, EventArgs e) { Microsoft.Office.Interop.Word.Document d = w.ActiveDocument; Microsoft.Office.Interop.Word.Table t = d.Tables.Add(d.Range(Type.Missing, Type.Missing), 1, 3, Type.Missing, Type.Missing); t.Cell(1, 1).Range.Text = "ID"; t.Cell(1, 2).Range.Text = "Untersuchung"; t.Cell(1, 3).Range.Text = "Preis"; } private void button2_Click(object sender, EventArgs e) { Microsoft.Office.Interop.Word.Document d = w.ActiveDocument; Microsoft.Office.Interop.Word.Table t = d.Tables[1]; Microsoft.Office.Interop.Word.Row r = t.Rows.Add(Type.Missing); r.Cells[1].Range.Text = listBox1.Text; r.Cells[2].Range.Text = textBox1.Text; r.Cells[3].Range.Text = textBox2.Text; }
Viele Grüße,Bogdan
Ich bin gerne bei den Foren. Es kommt von Herzen. Es wird aber keine implizite oder sonstige Garantie für die geposteten Antworte / Informationen gewährt. Hier auch die Forenregeln.- Bearbeitet Bogdan Petru Roiu Dienstag, 10. Januar 2012 10:05
- Als Antwort markiert Matthias212 Dienstag, 10. Januar 2012 16:46