Danke für den Tipp. Habe zwar noch rumgefummelt, es liegt aber nun daran das Excel bei mir in Englisch installiert ist, und ich somit zuerst de CultureUI("en-US") setzen mußte.
versuche schon seit Stunden ein Excel-File (Excel 2003) zu öffnen. Leider bleibt das Programm im Debugmodus bei der Open-Methode hängen. Der Compiler bringt eine COMException mit der Meldung: "Old format or invalid type library. (Exception from HRESULT:0x80028018(TYPE_E_INVDATAREAD))"
Ich habe die Office.Interop.Excel eingebunden. Hier mal der Quelltext:
using System;
using System.Reflection;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
using System.IO;
namespace WindowsForms_Excel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Excel-Instanz erzeugen und sichtbar schalten
Excel.Application excelBlatt = new Excel.Application();
excelBlatt.Visible = true;
string fileName;
object refmiss = Missing.Value;
OpenFileDialog opf_dlg = new OpenFileDialog();
DialogResult dlg = opf_dlg.ShowDialog();
// fileName = opf_dlg.FileName;
// für Test
fileName = Path.Combine(Application.StartupPath, "Exceltest.xls");
Excel.Workbook workbook;
// Excel-File öffnen
try
{
workbook = excelBlatt.Workbooks.Open(fileName,refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss, refmiss);
}
catch (System.Runtime.InteropServices.COMException ce)
{
MessageBox.Show("Fehler beim Öffnen", ce.Message);
}
Hat da jemand eine Idee? Was besagt eigentlich der Fehlercode HRESULT genau? Gibts da eine Aufschlüsselung?
Ich habe auch schon die Interop.Excel 11.0 gegen die 12.0 getauscht.
ich muß in einem Word-Dokument. Sämtliche Textboxen und Einträge in Tabellen umbenennen. Nun habe ich mal nachgesehen, wie das realisiert wird. Bei MSDN gibts da ein Beispiel, leider hakts da bei Application.Selection.Find !
Der Debugger sagt, er kann keine Zugriff auf eine nicht statische Eigenschaft in sttischem Inhalt haben.
das Problem betseht immer noch. Das Rücksetzen wird auch im Debugmodus angesprungen. Muß das irgendwie über ein Ereignis passieren? Habe diese Methode in einer Klasse eingebettet, die ca. 15 Eingabefelder nach einem Button-Click überprüft (Eingabegrenzen, numerische EIngabe).
kann mir jemand sagen wie ich in einer ComboBox die leeren Einträge aus der DropDownListe ausblenden kann? Die Daten kommen aus einem DataView, in dieser Spalte haben manche Datensätze keine WErte unsd somit sieht das DropDownListe sehr löchrig aus und vor allem unkomfortabel, wenn bei 10 eingestellten Einträgen nur bei zweien etwas steht.