Příklady práce s MS Excelem
Po založení se vytvoří objekt
PmaAdo, který má v kartě "
Metody" metodu
DtiOper. Tato metoda je základním rozhraním pro práci s tabulkami databáze a může ji využít například prohlížeč
Předkonfigurace "Obraz s tabulkovým editovatelným prohlížečem zdroje dat přes rozhraní DtiOper".
Rozhraní používá
ADO technologii a může být podle potřeby doplněno o další funkčnosti:
Příklad:
Vytvoří novou tabulku data se sloupci nTime (čas), 'flags' (celé číslo) a 'value1' (reálné číslo).
JavaScriptVBScriptVyber a zkopíruj do schránky
pMe.DbExecute("", "CREATE TABLE data (nTime date, flags integer, value1 double)", "");
pMe.DbExecute "", "CREATE TABLE data (nTime date, flags integer, value1 double)", ""
Vytvoření tabulky (
CREATE TABLE) v databázi
Excel znamená vytvoření nového listu (
Sheet).
Odstranění tabulky (DROP TABLE) však nezpůsobí odstranění listu, ale pouze vyprázdní jeho obsah.
- Pomocí metody
GetObject lze otevřít a získat referenci na aplikaci
MsExcel. Pak lze použít pro práci s listy a daty vnitřní implementaci jazyka
VBA (
Visual Basic For Aplications), který je součástí
Microsoft Office.
- Nevýhodou může být poměrně velká časová náročnost při čtení nebo zápisu velkého objemu dat.
Příklad1:
Otevření souboru Test.xls, v něm list 'Sheet1'. Čtení hodnoty v buňce "B3" a přiřazení do proměnné a. Zápis hodnoty 3.14 do buňky "D7". Zviditelnění aplikace MsExcell. Uložení a zavření aplikace.
JavaScriptVBScriptVyber a zkopíruj do schránky
var oWbs, oExcelApp, oSheet, a;
oWbs = Pm.AxGetObject("new", "Excel.Application");
oExcelApp = oWbs.WorkBooks.Open("c:\\Data\\Test.xls", 3, false, 4);
oSheet = oExcelApp.Sheets("Sheet1");
a = oSheet.Cells(3, 2).Value;
oSheet.Cells(7, 4).Value = 3.14;
oExcelApp.Parent.Windows(1).Visible = true;
oExcelApp.Save();
oExcelApp.Application.Quit();
Dim oWbs, oExcelApp, oSheet, a
Set oWbs = Pm.AxGetObject("new", "Excel.Application")
Set oExcelApp = oWbs.WorkBooks.Open("c:\Data\Test.xls", 3, false, 4)
Set oSheet = oExcelApp.Sheets("Sheet1")
a = oSheet.Cells(3, 2).Value
oSheet.Cells(7, 4).Value = 3.14
oExcelApp.Parent.Windows(1).Visible = true
oExcelApp.Save
oExcelApp.Application.Quit
Příklad2:
Vytvoří nový soubor EXCEL.
Zviditelní aplikaci MsExcell.
Vytvoří list aplikace (podle implicitního nastavení Excel).
Vytvoří referenci na první list.
Zápis hodnot do prvního listu, uložení a zavření aplikace.
Je možnost exportovat obsah do souboru pdf formátu (od verze Microsoft Office 2007).
JavaScriptVBScriptVyber a zkopíruj do schránky
var oExcelApp, oWorkbook, oSheet;
oExcelApp = Pm.AxGetObject("new", "Excel.Application");
oExcelApp.Visible = true;
oWorkbook = oExcelApp.WorkBooks.Add;
oSheet = oExcelApp.Sheets(1);
oSheet.Cells(1, 1).Value = oWorkbook.Sheets.Count;
oSheet.Cells(1, 2).Value = 34;
oSheet.Cells(2, 1).Value = Pm.Time;
oSheet.Cells(2, 1).NumberFormat = "d/m/yyyy h:mm:ss";
oExcelApp.ExportAsFixedFormat(0, "C:\\Data\\Test\\Report.pdf", , , , , true);
// Export to pdf format file
oSheet.SaveAs("C:\\Data\\Test.xls");
oExcelApp.Quit();
Dim oExcelApp, oWorkbook, oSheet
Set oExcelApp = Pm.AxGetObject("new", "Excel.Application")
oExcelApp.Visible = true
Set oWorkbook = oExcelApp.WorkBooks.Add
Set oSheet = oExcelApp.Sheets(1)
oSheet.Cells(1, 1).Value = oWorkbook.Sheets.Count
oSheet.Cells(1, 2).Value = 34
oSheet.Cells(2, 1).Value = Pm.Time
oSheet.Cells(2, 1).NumberFormat = "d/m/yyyy h:mm:ss"
oExcelApp.ExportAsFixedFormat 0, "C:\Data\Test\Report.pdf", , , , , true
' Export to pdf format file
oSheet.SaveAs "C:\Data\Test.xls"
oExcelApp.Quit