Delphi を使用してデータベース アプリケーションを作成しており、Access データベースから Excel スプレッドシートにデータをエクスポートする必要があります。docmd.spreadsheet を使用して、逆のシーケンス (Excel をインポートしてアクセス) を管理できました。100% 動作します。しかし、エクスポートのパラメータを設定する方法がわかりません。助けが必要です。
質問する
2114 次
1 に答える
4
DoCmd.TransferSpreadsheet Method
このサンプルコードを確認してください。また、ドキュメントも読むことをお勧めします。
{$APPTYPE CONSOLE}
uses
SysUtils,
ActiveX,
ComObj;
procedure ExportDataAccess(const AccessDb, TableName, ExcelFileName:String);
Const
acQuitSaveAll = $00000001;
acExport = $00000001;
acSpreadsheetTypeExcel9 = $00000008;
acSpreadsheetTypeExcel12 = $00000009;
var
LAccess : OleVariant;
begin
//create the COM Object
LAccess := CreateOleObject('Access.Application');
//open the access database
LAccess.OpenCurrentDatabase(AccessDb);
//export the data
LAccess.DoCmd.TransferSpreadsheet( acExport, acSpreadsheetTypeExcel9, TableName, ExcelFileName, True);
LAccess.CloseCurrentDatabase;
LAccess.Quit(1);
end;
begin
try
CoInitialize(nil);
try
ExportDataAccess('C:\Datos\Database1.accdb','Sales','C:\Datos\MyExcelFile.xls');
Writeln('Done');
finally
CoUninitialize;
end;
except
on E:EOleException do
Writeln(Format('EOleException %s %x', [E.Message,E.ErrorCode]));
on E:Exception do
Writeln(E.Classname, ':', E.Message);
end;
Writeln('Press Enter to exit');
Readln;
end.
于 2012-05-08T16:12:54.543 に答える