Der folgende Code gibt Daten aus einer Kalkulationstabelle perfekt in ein Raster zurück
[
string excelConnectString = "Provider = Microsoft.Jet.OLEDB.4.0;" +
"Data Source = " + excelFileName + ";" +
"Extended Properties = Excel 8.0;";
OleDbConnection objConn = new OleDbConnection(excelConnectString);
OleDbCommand objCmd = new OleDbCommand("Select * From [Accounts$]", objConn);
OleDbDataAdapter objDatAdap = new OleDbDataAdapter();
objDatAdap.SelectCommand = objCmd;
DataSet ds = new DataSet();
objDatAdap.Fill(ds);
fpDataSet_Sheet1.DataSource = ds;//fill a grid with data
]
Das Tabellenblatt, das ich verwende, hat Spalten mit den Namen A und so weiter (nur Standard-Spaltennamen) und der Name des Blattes ist Accounts.
Ich habe ein Problem mit der Abfrage ...
[OleDbCommand objCmd = new OleDbCommand("Select * From [Accounts$]", objConn);]
Wie kann ich die Abfragezeichenfolge so gestalten...
"Select <columnA>,<columnB>,SUM<columnG> from [Accounts$] group by <columnA>,<columnB>"
so dass er die Ergebnisse dieser Abfrage zurückgibt
Anmerkung: SpalteA ist A auf Blatt, SpalteB ist B auf Blatt und SpalteG ist G auf Blatt
Andere mögliche Alternativen:
- Ich habe die Daten dieser Excel-Tabelle in einem DataTable-Objekt, wie kann ich das DataTAble-Objekt abfragen
- Ich habe über ein DataView-Objekt gelesen, dass es eine Tabelle nehmen und die Tabelle entsprechend manipuliert zurückgeben kann (
<dataviewObject>.RowFilter = "where..."
), aber ich weiß nicht, wie ich die gewünschte Abfrage verwenden soll.