2016-06-15 8 views
-1

Ich habe eine Reihe von Excel-Tabellen, die interne SQL-Abfragen haben, um Daten von einem SQL-Server zu erhalten.Öffnen, Aktualisieren und Speichern von Tabellenkalkulation C#

Ich möchte diese Blätter durchlaufen, aktualisieren Sie sie und speichern Sie sie dann. Gibt es eine Möglichkeit, ein Blatt in C# zu öffnen, zu aktualisieren, zu speichern und zu schließen?

prost

+0

Ja, gibt es. Google wird viel helfen! –

+0

gestellt google, half nicht ... – Mote

Antwort

0

Siehe folgende von How to automatically refresh excel formulas?

In C# verwenden Application.Calculate() für alle offenen Arbeitsmappen Auswertung Workbook.Calculate(), um eine Arbeitsmappe oder Arbeitsblatt zu bewerten .Calculate() für ein Arbeitsblatt.

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel._application.calculate.aspx

Grundsätzlich fügen Sie einfach einen Verweis auf Microsoft.Office.Interop.Excel, rufen Sie Worksbooks.Open eine Arbeitsmappe Datei zu öffnen. Sie können dann Calculate oder CalculateFull, dann Save auf dem Anwendungsobjekt aufrufen, um die letzten Änderungen zurückzuschreiben.

+0

ich dies tat: https://www.dropbox.com/s/j67l5to59933do2/excelError.PNG?dl=0 funktioniert nicht. Änderungen in der DB werden nicht angewendet:/ – Mote

+0

Seltsam Sie könnten CalculateFullRebuild stattdessen versuchen, um zu sehen, ob das hilft? Oder Sie könnten die Anwendung zeigen und sehen, ob sich die Zahlen ändern, aber nicht richtig gespeichert werden? Können Sie sonst bestätigen, wie Ihre SQL-Abfragen konfiguriert sind? –

+0

Ich habe auch CalculateFullRebuild verwendet, habe nicht funktioniert:/ ja sql Querys verwendet werden und arbeiten auf manuelle Aktualisierung. Und ja, ich kann über C# auf die Dateien zugreifen, keine Ausnahmen – Mote