我正在使用ADOdataset组件在Delphi表单上查看Excel电子表格。
该组件要求将CommandText属性设置为要打开的工作簿中电子表格的名称。
我如何设置此属性以打开工作簿中的第一个电子表格,而不管其名称如何?
procedure TForm1.BitBtn1Click(Sender: TObject);
var XLSFile, CStr : string;
begin
if OpenDialog1.Execute() then
begin
XLSFile := OpenDialog1.FileName;
CStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
+XLSFile+'; Extended Properties=Excel 8.0;Persist Security Info=False';
ADODataSet1.Active := False;
ADODataSet1.ConnectionString := Cstr;
ADODataSet1.CommandText := ??????????;
ADODataSet1.Active := True;
end;
end;
最佳答案
您不能,您必须知道页面的名称。使用TADOConnection
连接到工作簿,以便您可以调用GetTableNames
检索页面名称。有一个示例here。然后,您可以将ADO数据集的Connection
属性或ADO查询设置为连接对象并运行查询。