我正在尝试在C#中查询和过滤OleDataTable,而不是Excel中的VBA。
string strSQL = "SELECT * FROM [Sheet1$] WHERE [Columns1$] is not null"; // to filter out any empty values, works if used column name like [UserInfo].
OleDbCommand cmd = new OleDbCommand(strSQL, connExcel);
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
OleDbCommandBuilder commandBuilder = new OleDbCommandBuilder(da);
dtData = new DataTable();
DataSet dtDataT = new DataSet();
dtData.Locale = System.Globalization.CultureInfo.InvariantCulture;
string FilePath = copyfile.ToString();
da.Fill(dtData);
代替[Columns1$]
我尝试了Columns(1)
,Columns(A)
,没有成功。
需要在连接字符串中指定 HDR=NO,之后列名将自动分配为 F1、F2 等。
https://www.connectionstrings.com/excel/