itthon / Játék konzolok / Hogyan adjunk Excel táblát az 1s-hez. Melyik a jobb - "1C" vagy "Excel"? Kérdése van, vagy tanácsadó segítségére van szüksége?

Hogyan adjunk Excel táblát az 1s-hez. Melyik a jobb - "1C" vagy "Excel"? Kérdése van, vagy tanácsadó segítségére van szüksége?

A potenciális ügyfelekkel való kommunikáció során gyakran hallom, hogy elegendő asztali funkcióval rendelkeznek az irodai csomagból, és nem látják értelmét az 1C programokban. Ennek az az oka, hogy egyesek ezt a megoldást még mindig csak a számviteli programokkal társítják, ami nem igaz.

Az Excel egy univerzális és tömegtermék, ezzel nem lehet vitatkozni. Szinte mindenki használhatja ezt a programot, ellentétben az "1C" fejlesztéseivel, amelyek szűk szakemberekre irányulnak. A "zöld" táblázatok segítségével tetszőlegesen megvalósíthatja a szükséges funkciókat, amelyek kényelmesek lesznek: itt van a szervezet pénzügyi modellje minden kölcsönös elszámolással, vezetői számvitel, akár szabályozott is, az adatok megjelenítésének nagy választéka, a program bővítésének lehetősége. saját képességeit különféle kiegészítők segítségével - minden az Ön kezében van a semmiből...

Jó, ha még csak most kezdi a vállalkozását, fokozatosan figyelembe véve a táblázat szükséges adatait az ügyfelekkel, beszállítókkal, szabályozó hatóságokkal való kapcsolatokról, az önkényes struktúra felépítéséről, de mi a teendő, ha az adatbázis terjedelmes lesz, és a munkatársak tízben lenni? Mindezt a saját paramétereik szerint kell figyelembe venni? Én amellett vagyok, hogy a kényelmet ne keverjük össze a megszokással, ami gyakran megzavarja egy vállalkozás rendszerezését, következésképpen annak optimalizálását.

Az érthetőség kedvéért képzeljük el, milyen igények merülhetnek fel a számvitel automatizálása során, például a kereskedelemben:

1. Egy adott időszakon belüli eladások elemzése.

Az értékesítési adatok elemzését az értékesítési osztály vezetője tudja elvégezni. Hiszen fontos, hogy megértse, hogy a terv megvalósul-e, mennyire hatékonyak a stratégiái, hogy eredménytelenség esetén időben kiigazítsa.

2. Raktári könyvelés.
Kell-e magyarázni, hogy az értékesítés számára is fontos, hogy megértsék a készleten lévő áruk elérhetőségét, mely áruk foglalhatók le és melyek nincsenek raktáron, és mit kell megrendelni? Szerintem itt minden világos.

3. A szerződő felek adatbázisának vezetése.
Még akkor is, ha a tulajdonos csak azt adja el, amit itt és most vásárolhat, ami jellemző a B2C szektorra, akkor a beszállítói bázissal kissé eltérő kapcsolatai vannak - szerződések, elsődleges... Képzeld el, milyen kényelmes, amikor minden a beszállítóval kapcsolatos automatikusan azonnal megjelenik egyetlen adatbázisban? A raktárért felelős vezető azonnal látja az áruk elérhetőségét a raktárban, egy másik, a dokumentumokért felelős munkatárs pedig figyeli a rendelkezésre állást, a szerződéses jogviszonyból eredő összes kötelezettség teljesítését, kinek és mennyivel tartozik. Ellentmondások esetén pedig ellenőrizheti az adatokat egy bizonyos időszakra vonatkozóan, így kevesebb mint egy perc alatt eredményt generál.

4. A szervezet nyeresége.
Nem lesz nehéz eredményjelentést készíteni, mivel az adatbázisban már minden kiadási és bevételi adat megtalálható. Feltéve, hogy az információkat időben, legalább a szükséges időpontig megadják. Itt az alapvető tényező a felhasználó személyes felelőssége.

Ha nincs sok ügyfele és beszállítója, akkor az Excel igazán megfelel Önnek, hiszen bőven van idő a táblázatban a saját sémák megtervezésére és kitöltésére, majd a dokumentumok különböző mappáiba történő szétosztására a számítógépen: szerződések, beszállítók, ügyfelek, ügyfelek a környéken, fejlesztés alatt álló ügyfelek, törölni kívánt ügyfelek - a mappák mappán belüli létrehozásának végtelen és izgalmas folyamata. És ha sok az információ, kényelmes-e ebben az esetben nyilvántartást vezetni az adatbázisáról? Persze mindig vannak kivételek, néha vannak olyan nagy forgalmú szervezetek, amelyek pénzügyi adatait csak Excelben tárolják. Mennyi időbe telik az osztályok közötti adatcsere és egyesítés? Válasz: sokat.

Fogalmam sincs, hogyan lehet gyorsan megtalálni a megfelelőt egy tetszőleges rendszer által rendezett nagyszámú Excel dokumentumban. Például az adózási követelményekhez szükséges dokumentumok benyújtásakor. Hogyan nyújt be egy könyvelő jelentést a szabályozó hatóságoknak, ha az összes információ szétszórt? A könyvelés természetesen kiszervezhető, és néhány cégtulajdonost sajnos nem érdekel, hogy egy adott szakember milyen folyamatokkal rendelkezik, amíg egyensúlyban van. De még ha igen, hogyan szerveződik meg az iratcsere folyamata? Milyen gyorsan érti meg egy alkalmazott az oldalról a rögtönzött információs szerkezetet?

Nem mondhatom el ugyanezt az 1C-ről, mert ott minden információ strukturált és összekapcsolt:

    Egyetlen adatbázis távoli és teljes munkaidős alkalmazottak számára, amelyben az összes szabványos és tetszőleges dokumentummal dolgozhat;
    A szabályozó hatóságok felé történő jelentés a programban már szereplő adatokon alapul, nem kell sok fájlt megnyitni, több értéket egy táblázatba redukálni a végeredményhez.
Az „1C” jó értelemben egy többfeladatos rendszer, amely mind a tipikus számviteli feladatokra, mind az összes szervezeti folyamat automatizálására irányul, tevékenységi körtől függően. A kulcsszó itt a rendszer. Senki sem zavarja, hogy Excelben rendezze üzleti rendszerét, de minek feltalálni újra a kereket, ha vannak olyan megoldások, amelyek szinte minden igényt lefednek az idő- és pénzügyi költségek optimalizálása terén, segítik a munka rendszerezését?

Az Excel védelmében

Valószínűleg úgy tűnt Önnek, hogy ellenzem az adatok "zöld" táblázatokba való építését. Egyáltalán nem. Valójában magam is gyakran intézek üzleti tevékenységet az Excelben: ha tetszőleges számításokra van szükségem, ha az adatokat ügyfelek szerint kell szegmentálnom, elemzést végezni azon paraméterek szerint, amelyek nem szerepelnek az 1C-ben - igen, ez megtörténik -, akkor az "excel"-be megyek. Egyszerűen fogalmazva, táblázatokban számításokat, nem szabványos elemzéseket végzek, de aztán később úgyis mindent rendszerezem 1C-ben.

Ezután az 1C-ből feltöltött fájlok megtekintéséhez továbbra is Excelre van szüksége, mivel az 1C-ben lévő adatok táblázatokban vannak tárolva. Szerinted ez egy ördögi kör? Másképp fogalmazok: az "1C" és az "Excel" úgy járnak egymás mellett, mint két partner, de mindegyiknek megvan a maga célja, jól kiegészítik egymást, de nem cserélik egymást.

Ha rendszereznie kell ügyeit, figyelembe véve államunk jogalkotási rendszerét, figyelembe véve az üzlet sajátosságait és irányát, különösen, ha nagy mennyiségű információról van szó, akkor szüksége van az 1C-re. Ha tetszőleges számításokra, a nulláról szóló stratégia felépítésére, a nem szabványos elemzési adatok megjelenítésére van szüksége, akkor az Excel az Ön szolgálatában áll. De sokkal kényelmesebb ezekkel a megoldásokkal egyidejűleg dolgozni.


Mi az eredmény - "1C" vagy "Excel"?

Kezdetben, ha a kérdés pontosan az automatizálás finanszírozásában van, bár az alap 1C programok nem kerülnek olyan sok pénzbe, én Excelt használnék. Óriási plusz, hogy a "zöld" táblák adatai veszteség nélkül betölthetők 1C-be. De a méretezés során azt tanácsolom, hogy fordítson figyelmet az üzleti folyamatok automatizálási programjaira. Sok van belőlük, és nem feltétlenül "1C" ...

Az 1C-re való átállás akkor valósítható meg, ha megérti, hogy optimalizálni kell erőforrásait, ideértve az ügyfelekkel és a beszállítókkal, valamint a felügyeleti hatóságokkal való kapcsolatokkal kapcsolatos kérdések automatizálását. Általában a munkafolyamatok javítása az üzleti hatékonyság növelése érdekében, amikor az információfeldolgozás sok időt vesz igénybe, és az Excel-fájlok már nem képesek megbirkózni a bevitt adatok mennyiségével.

Azonban nem minden "1C" felelhet meg Önnek, figyelembe kell vennie különféle tényezőket: az üzlet sajátosságait és terjedelmét, a léptéket, a napi feladatok szükségességét, a minimálisra csökkentendő rutint. Minden egyéni. Az igazság, mint mondtam, valahol az „1C” és az „Excel” között van – ez egymás mellett van.

Ezen talán mindenen. De ha kérdése van, forduljon hozzánk, és megpróbálunk segíteni. Sikeres üzleti folyamatokat, kollégák!

  • A szerződő felek közötti információcsere (árlisták, egyeztetési cselekmények stb.) végrehajtása során;
  • Az operátorok munkájának megkönnyítése olyan esetekben, amikor a fő könyvelést 1C-ben vezetik, és egy részét Excel táblákban végzik;
  • Az adatbázis kezdeti feltöltése során.

Ennek a műveletnek a végrehajtásához használhatja az információs technológiai támogatás (ITS) előfizetéssel elérhető szabványos funkcionalitást és a különféle csatlakozási lehetőségeken keresztül megvalósított önírásos feldolgozást. Cikkünkben megpróbáljuk a lehető legteljesebb mértékben elemezni az összes lehetséges esetet, és megválaszolni a legtöbb meglévő kérdést az adatok Excelből az 1C-be való betöltésével kapcsolatban.

Univerzális mechanizmus

Az ITS-lemezeken, valamint az 1C portálon a „Technológiai támogatás” -> „Univerzális jelentések és feldolgozás” menüben az „Adatok betöltése táblázatos dokumentumból” mappában a megfelelő feldolgozás történik.

Amikor elindul, megnyílik egy űrlap (1. ábra):

Amint az az űrlapon látható, lehetővé teszi az információk átvitelét a következő konfigurációs objektumokhoz:

  1. Könyvtár;
  2. A dokumentum vagy segédkönyv táblázatos része;
  3. Információk nyilvántartása.

A kapcsoló helyzetétől függően változik az objektum kiválasztási mező.

A feldolgozás táblázatos űrlapja a feltöltött fájl megnyitásakor töltődik ki.

A típusfeldolgozás támogatja a feltöltéseket innen:

  • Az 1C cég szakemberei által kifejlesztett, formátumú fájlokmxl;
  • Lisztxls formátumban mentveExcel 97-2003;
  • szöveges fájltxt;
  • táblázatokdbf.

A nagy volumenű Excel fájlok betöltése sokáig tarthat, ezért ha feltételezzük, hogy az adatok betöltése több lépésben is megtörténhet, vagy biztosan tudja, hogy egy meglévő fájlt többször kell megnyitnia, jobb, ha elmenti az információkat. belőle mxl-ben az idegek és az időkímélő formátum érdekében. Ezt közvetlenül a feldolgozási űrlapról teheti meg.

Fontos megérteni, hogy ha sorcsoportok, alcímek és megjegyzések vannak a forrásfájlban, akkor ezeket manuálisan kell eltávolítani.

Most menjünk tovább a "Beállítások" fülre (2. ábra):

2. ábra

Az Excel-táblázatok gyakran tartalmaznak egy fejlécet mindenféle részlettel és adattal (a nyomtatott űrlap neve, a partner adatai, a beérkező dokumentum dátuma és száma, oszlopok neve stb.), hogy kizárják azok feldolgozását a program az űrlapon a "Táblázatfüzet dokumentum első sora" attribútumban meg kell adni az első sort az átvitt információkkal

Miután kiválasztotta azt a metaadat objektumot, amelybe az információ beírásra kerül, a "Beállítások" lap táblázatos része automatikusan megtelik az attribútumok nevével, típusuk leírásával és egyebekkel. fontos információ. A "Beállítások" fül táblázatos részének oszlopait külön szakasznak kell szentelni.

Beállítások oszlopok

Jelölés - a sorban lévő négyzet bejelölésével vagy kijelölésével meghatározható, hogy a megfelelő attribútum kitöltésre kerül-e.

Az attribútum ábrázolása - a metaadat attribútum szinonimája (neve) ide van írva, a konfigurátorban megadott módon.

Keresőmező - ha bejelöli ezt a jelölőnégyzetet, a feldolgozás a megfelelő attribútum alapján keres elemeket, és sikeres esetben módosítja a meglévő adatokat, kiegészítő funkció ez a mező - védelem a másolatok megjelenése ellen.

Típusok leírása – megjeleníti azt az adattípust, amelyik rendelkezik egy vagy másik metaadatattribútummal.

Letöltési mód – három lehetőség közül választhat (3. ábra):

3. ábra

  • Keresés - a megfelelő elemet keresi, hiánya esetén újat lehet létrehozni;
  • Beállítás - egy bizonyos érték alárendelt módon van beállítva;
  • Számítás – ebben az esetben a „Kapcsolatfeltétel/Értékkifejezés” oszlopban megadott kifejezés számításának eredménye a létrehozandó elem mezőjében lesz beállítva.

Ez utóbbi esetben a Kifejezés mező aktiválásával megnyílik az űrlap (4. ábra).

4. ábra

Oszlopszám - egy mező, amely jelzi, hogy az Excel táblázat melyik oszlopából kell adatokat venni a kitöltéshez.

Alapértelmezett érték - gyakran előfordul olyan helyzet, amikor a feltöltött fájl nem tartalmazza az összes elem rögzítéséhez szükséges adatot, ebben az esetben az ebben a mezőben található információk kerülnek kitöltésre.

Kapcsolódási feltétel / Értékkifejezés - ezt a mezőt már részben érintettük, amikor számított mezőket vettünk figyelembe, ezen kívül megadhatja, hogy milyen feltétel szerint kerüljön szinkronizálásra a forrásadatok.

Itt elvileg minden információ található, amely a "Beállítások" fülön elérhető.

Annak érdekében, hogy ne veszítsen sok időt a betöltésre, a megfelelések és kifejezések felírására, a fejlesztők lehetőséget biztosítottak a beállítások opció mentésére egy mxlz kiterjesztésű fájlba.

Az átvitt adatok helyességét a "Kitöltés vezérlése" gombra kattintva ellenőrizheti (1. ábra). Ezt követően elindíthatja a letöltési folyamatot. Az eljárás sikeres befejezéséről vagy a nem szabványos helyzetekről külön értesítést kap.

Adatok feltöltéséhez Excelből ide információs bázisok"Irányítás és kereskedelem" van egy másik mechanizmus. Kevésbé univerzális, mint a fenti módszer, azonban nem igényel ITS-előfizetést, és a standard szállítás tartalmazza.

Ez a feldolgozás a „Vásárlások” fülön, a „Szolgáltatás” menüben található, „Szállítói árak betöltése fájlokból” néven (5. ábra)

5. ábra

A feldolgozási űrlap a következőket tartalmazza:

  1. Dátumválasztó mező, amely jelzi, hogy ez az ár mikorra vonatkozik;
  2. Az árlistáját küldő partner kiválasztására szolgáló mező;
  3. Egy gomb, amely lehetővé teszi a beállítandó árak típusának kiválasztását;
  4. Feltöltött adatokkal kitölthető táblázatos rész.

Ez a forma a 6. ábrán látható

6. ábra

Az űrlap tetején található jelmagyarázat elmagyarázza, hogyan kell használni az űrlap első lapját.

A partner kiválasztása után (attól függően, hogy szállítóként, bizományosként vagy eladóként jár-e el), minden ártípushoz további oszlopok válnak elérhetővé a táblázatban.

A webes felületen való munka során egyes böngészők böngészőbővítmény telepítését igényelhetik (7. ábra). A "Telepítés indítása" gombra kell kattintanunk, és újra kell indítanunk a kapcsolatunkat.

7. ábra

Ezt követően a vágólap segítségével tudunk majd információkat átvinni egyik táblázatból a másikba. Amikor a számunkra szükséges oszlopokat („Cikk”, „Név”, „Ár”) kitöltöttük, megnyomjuk a „Tovább” gombot, és továbblépünk a második oldalra (8. ábra)

8. ábra

A program automatikusan megkeresi az egyezéseket az adatbázison belül, és ha nincsenek, felajánlja a hiba elhárításának lehetőségeit. Kinézet táblázatos rész kapcsolóval vezérelhető. Emellett a felhasználó önállóan is össze tudja hasonlítani a feltöltött fájl elemeit az adatbázisban lévőkkel.

  • Regisztráljon mindent;
  • Csak azokat regisztrálja, amelyek az adatbázisban már szereplőkhöz képest megváltoztak.

A szövegmezőbe írhat be egy megjegyzést, amely rögzítésre kerül a dokumentumban (9. ábra):

9. ábra

Feldolgozás után:

  • Egy megfelelő elem jön létre a "Beszállítói nómenklatúra" könyvtárban (ha nem volt ott);
  • A „Nómenklatúra” című kézikönyv egy eleméhez illeszkedik;
  • Létrejön és feladásra kerül a "Cikkárak beállítása" dokumentum, amelyen feltüntetik: szállító, ártípus és adatrögzítés dátuma.

Hasonló módon működik az "Áruk betöltése külső fájlokból" feldolgozása is.

DIY transzfer feldolgozási lehetőségek

A fő probléma az adatok Excel-fájlból való kinyerésében az, hogy az 1C-nek nincs beépített egyértelmű mechanizmusa a megnyitáshoz. Több lehetőség is van Excel kapcsolatok 1C-hez:

  • A Microsoft ADODB-n keresztül - egy meglehetősen gyors módszer, amely általában mind a fájl, mind a kliens-szerver adatbázis tárolási lehetőségeire alkalmazható;
  • Át Microsoft használat Office - egy módszer, amely néha meghiúsul az SQL-adatbázisokkal való munka során, általában valamivel lassabban működik, mint az első módszer, és az Office is szükséges;
  • Libre Office-on keresztül - az előző módszerrel ellentétben ingyenes, az xls és xlsx formátumok mellett saját táblákat is támogatja, de telepített LibreOffice csomagés a feltöltött fájl némi előkészítése (a táblázat első sora tartalmazza az oszlopok nevét).

Nézzük meg közelebbről különböző módokonés opciók.

Az ADODB.Connection-en keresztül

Általában az ADO az ActiveX Data Object rövidítése, és arra szolgál program hozzáférés különféle adatbázisokhoz. Harmadik féltől származó fájlokkal (beleértve az Excelt is) való bármilyen kapcsolat létrehozása során a legnagyobb probléma a kapcsolati karakterlánc helyes összeállítása.

Három lehetőség van az Excel-fájlokhoz:

Csatlakozási karakterlánc opciók:

  • Szolgáltató – itt van meghatározva a használt illesztőprogram;
  • Adatforrás - meghatározza a megnyitni kívánt fájl nevét;
  • Extended Properties - itt adhatja meg, hogy kell-e fejléc sor a táblázathoz (HDR = IGEN azt jelzi, hogy az adatok az első sorból, HDR = NO - a második sorból kerülnek kiolvasásra), hogy a fájl csak olvashatóan legyen-e megnyitva ( Csak olvasható) és néhány további lehetőség.

A kapcsolati karakterlánc létrehozása után csatlakozhatunk a letöltött fájlhoz (13. ábra)

13. ábra

Most már használhatjuk egyszerű kérés(14. ábra) kezdje el az információk lekérését a letöltött fájlból.

BAN BEN ez az eset a „Sheet” paraméter határozza meg, hogy az excel munkafüzetből melyik lappal kell dolgoznunk.

A lapon tárolt rekordok halmaza a Recordset objektum segítségével olvasható. Ebben az esetben a lap első rekordja a BOF (fájl eleje) paraméterrel, az utolsó EOF (fájl vége) paraméterrel érhető el.

Excel alkalmazáson keresztül

A fő különbség az előző módszerhez képest, hogy az adatbázis-illesztőprogramok mellett az Excelt is telepíteni kell arra a számítógépre, ahol a kapcsolat létrejön. Csak ebben az esetben tudjuk inicializálni az alkalmazást adatok kiolvasására a táblázatból (16. ábra).

Ennek a COM objektumnak több gyermekparamétere is van, de a fő számunkra a feladat jelenlegi feltételei között a WorkBooks paraméter (17. ábra).

A könyv inicializálása után meg kell határozni azt a lapot, amelyről az adatok ki lesznek olvasva (18. ábra).

Ezt követően a megnyitott fájl táblázatának soraiban és oszlopaiban ismételgethet.

Néhány szó a lehetséges hibákról

A fájlokhoz való kapcsolódás során előforduló hibák oroszlánrésze abból adódik, hogy a fájlt egy másik alkalmazás már használja. Nem baj, ha a tálcán látható, hogy az Excel fut a számítógépen, de ha Ön vagy egy másik felhasználó innen nyitotta meg külső feldolgozás, ez vizuálisan csak a „Feladatkezelőn” keresztül határozható meg, ezért ne felejtse el lezárni a kapcsolatot az átviteli folyamat vége előtt:

Az ADO-n keresztül történő munkavégzés esetén (19. ábra);

19. ábra

  • Az alkalmazással való munkavégzés esetén (20. ábra).

Rizs. húsz.

A kapcsolat és az adatokkal végzett munka folyamata legjobban a Kísérlet-Kivétel-Kísérlet vége konstrukcióba szervezhető, kivételes helyzetben hibaleírást okozva. Ez ugyan néha lelassítja a munkát, de nagyban leegyszerűsíti a hiba okának meghatározását és végső soron a kiküszöbölésének módjait.

Az 1C-ben kétféleképpen dolgozhat az MS Excel fájlokkal, egy COM-objektum és a beépített 1C-eszközök segítségével egy táblázatkezelő dokumentumobjektum segítségével. Vizsgáljuk meg mindkét módszert részletesebben.

1. Munkavégzés a COM-objektumon keresztül.

Ehhez a módszerhez az MS Excel telepítése szükséges, és ha a szerveren fájllal dolgozunk, akkor az MS Excelt kell telepíteni a szerverre, ha a kliensre, akkor a kliens oldalon is szükséges az MS Excel.

Egy példa (a cikk végén megtekinthető szöveges formában):

Megjegyzendő, hogy az "Excel.Application" COM objektum által biztosított összes objektum, metódus és tulajdonság a VBA, az MS Office programozási nyelv objektumai, metódusai és tulajdonságai.

Jegyzet:

Néha egy meglévő sablonnal kell dolgoznia. Ezután ezt a sablont el kell tárolnunk valahol, hogy minden szükséges felhasználó hozzáférhessen. Van azonban egy egyszerűbb megoldás is, a sablont bináris elrendezésként mentjük el.

2. Dolgozzon át az 1C táblázatban.

Az 1C táblázatkezelő dokumentum támogatja az MS Excel formátumot a 8-as platformtól kezdődő rögzítéshez, de csak a 8.3.6 platformtól kezdődő megnyitáshoz. Sőt, kinyitáskor az összes lap egy táblázatos dokumentumba kerül. A 8.3.10-es verziótól kezdődően a betöltéskor a különböző lapok különböző területként kerülnek betöltésre.

A felvételi példa nagyon egyszerű, és nem igényel különösebb figyelmet:

Itt azonban van egy probléma. Amikor 1C-ből rögzít egy Excel-munkafüzetbe, a lapnevek megjelenítése alapértelmezés szerint le van tiltva.

Ezt a problémát kétféleképpen lehet megoldani: 1 - engedélyezze a lapok megjelenítését magában a könyvben a beállításokban (nem minden felhasználó ért egyet ehhez), 2 - tegye ezt egy COM objektumon keresztül (ismét telepíteni kell az MS Excelt) .

Ezt a kis kiegészítést követően a lapcímkék láthatóak lesznek az MS Excel fájlban.

Az MS Excel olvasása nem olyan egyszerű feladat, mivel az olvasási módszer csak a szerveren vagy vastag kliensen érhető el. Ehhez át kell vinnünk az MS Excel fájlt a szerverre.

&AtClient

CreateDocument() eljárás

Egy kivétel

Kísérlet vége;

Könyv = Excel.WorkBooks.Add(); //Új MS Excel munkafüzet létrehozása

Lap = Book.WorkSheets.Add(); //Adj hozzá egy lapot

Sheet.Name = "Példa az 1C-ből"; //Állítsa be a lap nevét

Sheet.Cells (1,1).Value = "(!LANG:Készítsünk egy képletet";!}

Lap.Cellák(2,1).Érték = 1;

Lap.Cellák(2,2).Érték = 2;

Sheet.Cells(2,3).Formula = "=A2+B2";

Sheet.Cells(3,1).Érték = CurrentDate();

Book.SaveAs("C:\1\Test.xlsx");

Book.Close();

Vége eljárás

&A szerveren

GetLayoutServer() függvény

Return FormAttributeToValue("Object").GetLayout("Feltöltési sablon"); //Így kapjuk a külső feldolgozási elrendezést;

EndFunctions

&AtClient

Eljárás Munka()

Excel = Új COMObject("Excel.Alkalmazás");

Egy kivétel

Show("Sikertelen kísérlet az Excel összetevő csatlakoztatására. Előfordulhat, hogy az Excel nincs telepítve ez a számítógép!");

Kísérlet vége;

Layout = GetLayoutServer();

Layout.Write(IdeiglenesFileName);

Kérdése van, tanácsadó segítségére van szüksége?

Könyv = Excel.WorkBooks.Open(TempFileName);

SheetTemplate = Book.WorkSheets(1);

SheetTemplate.Cells (6,1).Value = "(!LANG:Dátum:";!}

Lapsablon.Cellák(6,2).Érték = CurrentDate();

SheetTemplate.NumberFormat = "ééé/hh/nn;@"; // Adjuk meg a dátumformátumot, ezt a formátumot egy makró MS Excelben történő rögzítésével kapjuk meg

SheetTemplate.Columns("B:B").EntireColumn.AutoFit; // Nyújtsa ki az oszlopot, hogy pontosan illeszkedjen a dátumhoz

Book.SaveAs(Fájlnév);

Book.Close();

Vége eljárás

&AtClient

Vége eljárás

&AtClient

Eljárás WriteSpreadsheetDocument()

SpreadsheetDocument = Új SpreadsheetDocument();

SpreadsheetDocument.Area("R1C1").Text = "Példa egy bejegyzésre az MS Excelben az 1C-ből";

SpreadDocument.Write("C:\1\Test2.xls",SpreadDocumentFileType.XLSX);

Excel = Új COMObject("Excel.Alkalmazás");

Excel.WorkBooks.Open("C:\1\Test2.xls");

Excel.Visible = 0;

Excel.ActiveWindow.DisplayWorkbookTabs = 1;

Excel.ActiveWindow.TabRatio = 0,6;

Excel.ActiveWorkbook.Save();

Excel.Application.Quit()

Vége eljárás

BinaryData = Új Bináris Adat("C:\1\test2.xlsx");

Cím=PutToTempStorage(BinaryData,ThisForm.UniqueIdentifier);

SpreadsheetDocument = DownloadOnServer(Cím);

SpreadsheetDocument.Show();

Vége eljárás

&A szerveren

Funkció LoadOnServer(cím)

TempFileName = GetTemporaryFileName("xlsx");

FileData = GetFromTempStorage(Cím);

FileData.Write(IdeiglenesFájlnév);

SpreadsheetDocument = Új SpreadsheetDocument();

Vissza SpreadsheetDocument;

Bevezetés.

Sokan tudják, hogy az Excel sokkal régebbi, mint az 1C. Véleményem szerint ez egy nagyon sikeres termék, és nem hallottam rá panaszt. Az Excel egyszerű és sokoldalú. Nemcsak egyszerű aritmetikai műveletek elvégzésére képes, hanem összetett számítások, grafikonok stb. Ismerek olyan példákat, amikor a szervezetek az 1C-re váltás előtt a könyvelés egy részét Excelben vezették. Sokan és most párhuzamosan két programot használnak. Ebben a cikkben megvizsgáljuk az 1C és az Excel közötti adatcserét.

1C és Excel táblázatok.

A kényelem érdekében sok felhasználó 1C táblázatokat (nyomtatható űrlapokat) ment el Excel formátumban (* .xls). Ezt követően a keletkezett fájlban különféle csoportosítások, rendezések, számítások stb. Ez annak a ténynek köszönhető, hogy az 1C táblázatokban nincs olyan hatalmas funkcionalitás, mint az Excel táblázatokban. Az 1C 8.0 verzióban azonban vannak olyan újítások, amelyek kényelmesebbé teszik az asztalokkal való munkát.

Az 1C webhelyen (http://www.1c.ru/) található egy hasznos program, amely lehetővé teszi az 1C táblázatok megnyitását az Excelben, és egy Excel-lapot 1C táblázatként menthet. Ez akkor hasznos, ha az 1C táblázatot nem Excel formátumban mentette, és az 1C nincs telepítve arra a számítógépre, amelyen meg kell nyitnia a táblát. Igen, és folyamatosan emlékezzen arra, hogy az 1C táblázatot Excel formátumban kell mentenie, nem lesz szükség rá.

A programról teljes információ itt található.
A programot innen töltheti le (zip archívum 682 739 bájt).

Megjegyzés: Az Excelben a decimális elválasztó a ",". Ezért az 1C táblázat Excel formátumban történő mentése előtt cseréljen ki benne egy másik elválasztót (például ".") ","-re. Ellenkező esetben az Excel nem tud ezekkel a számokkal számításokat végezni, vagy egyáltalán nem jelennek meg számként. Például az 1C táblázatban a „15.2” az Excelben „február 15.”-ként jelenik meg.

Adatok lekérése Excelből.

Az 1C-ből az Excelbe való hozzáférés az OLE-n keresztül történik. Például kód
Kísérlet
Egy kivétel
Értesítés(Hiba leírása() +
);
Visszatérés;
Kísérlet vége;
lehetővé teszi számunkra, hogy az "Excel" változón keresztül hozzáférjünk a futó alkalmazás Excel. És akkor már hozzáférhet az adatokkal ellátott könyvhöz (fájlhoz), ívhez és cellához. Az alábbiakban kódpéldák találhatók.

Könyv (fájl) megnyitása:
Könyv = Excel. munkafüzetek. Open(PathToFile);
A PathToFile az Excel-munkafüzetfájl teljes elérési útja.

A munkalap kiválasztása:
vagy
Lap = Könyv. Munkalapok(Lapnév);
A SheetNumber a könyvben lévő lap száma, a SheetName pedig a lap neve a könyvben.

Egy lapcella értékének lekérése:
Érték = Lap. Cellák (LineNumber , ColumnNumber ). érték;

Fontos: ne felejtse el Excel kódot hozzáadni a mezőhöz a szükséges műveletek végrehajtásához. Kilépés(); , ellenkező esetben a futó folyamat befejezetlen marad, és lefoglalja a számítógép memóriáját és processzorát.

Adatok kiadása Excelbe.

Az adatok Excelbe történő kiadásához (feltöltéséhez) meg kell nyitnia egy meglévő munkafüzetet, vagy létre kell hoznia egy újat, és ki kell választania egy munkalapot az adatkiadáshoz. Meglévő könyv megnyitását fent leírtuk, de új könyv létrehozásához a következő kódot kell használnia:
Kísérlet
Excel = CreateObject("Excel.Application" );
Egy kivétel
Értesítés(Hiba leírása() +
"Az Excel nincs telepítve erre a számítógépre!");
Visszatérés;
Kísérlet vége;
Könyv = Excel. munkafüzetek. add();

Mivel egy könyv Excelben történő létrehozásakor a munkalapok automatikusan létrejönnek (Eszközök-> Beállítások-> Általános-> Táblázatok egy új könyvben), csak ki kell választania azt a lapot, amellyel dolgozni szeretne:
Lap = Könyv. Munkalapok(Lapszám);
vagy ha szükséges, adjon hozzá egy új lapot a könyvhöz:
Lap = Könyv. Ágynemű. add();
A következő lépés a cella értékének beállítása:
Lap. Cellák (LineNumber , ColumnNumber ). érték = érték ;
RowNumber, ColumnNumber - sorszám és oszlopszám, amelynek metszéspontjában a cella található.
És a végén rögzítenie kell a létrehozott könyvet:
Kísérlet
Könyv . SaveAs(PathToFile);
Egy kivétel
Értesítés (hiba leírása()
+ "A fájl nem mentve!");
Visszatérés;
Kísérlet vége;
PathToFile – az Excel-munkafüzetfájl teljes elérési útja (a névvel együtt).
Fontos: ne feledje, hogy a fájlnevek nem tartalmazhatják a \ / : * karaktert? " >< |.

Általánosan használt módszerek az értékek beolvasására/beállítására Excelben.

Excel = CreateObject("Excel.Application" ); Hozzáférés megszerzése az Excel alkalmazáshoz.
Excel. Látható = Láthatóság ; 0 - Az Excel nem látható, 1 - látható.
Könyv = Excel. munkafüzetek. add(); Új munkafüzet (fájl) készítése Excel.
Könyv . SaveAs(Fájlnév); Excel munkafüzet mentése.
Lap = Könyv. Munkalapok. add(); Új lap hozzáadása a könyvhöz.
Könyv = Excel. munkafüzetek. Megnyitás(fájlnév); Meglévő munkafüzet (fájl) Excel megnyitása.
Lap = Könyv. Munkalapok(Lapszám); Lap beállítása munkalapként számlapszámmal.
Lap. Név = Lapnév ; Munkalap elnevezéseSheetName
Lap. Oldal beállítása . Nagyítás = Scale ; Megadja az Oldal méretezése beállítást (10 és 400 között).
Lap. Oldal beállítása . Orientation = Orientation ; Tájolás: 1 - álló, 2 - fekvő.
Lap. Oldal beállítása . LeftMargin = Excel . CentimetersToPoints ( centiméter ); Beállítja a bal oldali szegélyt (centiméterben).
Lap. Oldal beállítása . TopMargin = Excel. CentimetersToPoints ( centiméter ); Megadja a felső határt (centiméterben).
Lap. Oldal beállítása . RightMargin = Excel. CentimetersToPoints ( centiméter ); Megadja a jobb oldali szegélyt (centiméterben).
Lap. Oldal beállítása . BottomMargin = Excel . CentimetersToPoints ( centiméter ); Beállítja az alsó határt (centiméterben).
Lap. Oszlopok (ColumnNumber) . ColumnWidth = Szélesség ; Állítsa be az oszlop szélességét.
Lap. Cellák (LineNumber , ColumnNumber ) . érték = érték ; Adatok bevitele egy cellába.
Lap. Cellák (LineNumber , ColumnNumber ) . betűtípus. Név = FontName ; Betűtípus beállítása egy cellában.
Lap. Cellák (LineNumber , ColumnNumber ) . betűtípus. Méret = FontSize ; Állítsa be a betűméretet egy cellában.
Lap. Cellák (LineNumber , ColumnNumber ) . betűtípus. Félkövér = Bold ; 1 - félkövér betűtípus, 0 - normál.
Lap. Cellák (LineNumber , ColumnNumber ) . betűtípus. Dőlt = Italic ; 1 - ferde betűtípus, 0 - normál.
Lap. Cellák (LineNumber , ColumnNumber ) . betűtípus. Aláhúzás = Aláhúzott ; 2 - aláhúzva, 1 - nem.
Lap. Cellák (LineNumber , ColumnNumber ) . NumberFormat = Formátum ; Állítsa be a cella adatformátumát.
Lap. Cellák (LineNumber , ColumnNumber ) . Határok. Vonalstílus = Vonaltípus ; Állítsa be a cellaszegélyeket. 1 - vékony szilárd anyag.

Ez a módszer egyszerű. Lényege, hogy a tárgy SpreadsheetDocument módszerek vannak:

  • éget (< ИмяФайла>, < ТипФайлаТаблицы >) adatok feltöltése fájlba;
  • Olvas (< ИмяФайла>, < СпособЧтенияЗначений >) adatok fájlból való betöltéséhez.

Figyelem!

A Write() metódus elérhető mind a kliensen, mind a szerveren. A Read() metódus csak a szerver oldalon érhető el. Ezt emlékezni kell
a kliens-szerver interakció tervezésekor.

Vegyünk egy példát egy táblázatkezelő dokumentum fájlba mentésére. A TableDocument objektumot bármilyen módon elkészíteni és kitölteni szükséges, ill kirakodás A fájl csak egy sorból készül:

TabDoc . Write(FilePath, SpreadsheetDocumentFileType.XLSX);

Itt TabDoc- generált táblázat, A fájl elérési útja- a feltöltendő fájl neve, SpreadsheetDocumentFileType.XLSX— a generált fájl formátuma. A következő Excel formátumok támogatottak:

  • XLS95 - Excel 95 formátum;
  • XLS97 - Excel 97 formátum;
  • Az XLSX egy Excel 2007 formátum.

TabDoc = New SpreadsheetDocument;
TabDoc . Read(PathToFile, WayToReadSpreadsheetDocumentValues.Value);

Itt A fájl elérési útja- A letöltött Excel fájl elérési útja. WayToReadValuesSpreadDocument.Value meghatározza, hogyan kell értelmezni a forrásdokumentumból kiolvasott adatokat. Választható opciók:

  • Jelentés;
  • Szöveg.

Csere OLE-n keresztül

Az OLE automatizálási technológián keresztüli csere talán a legáltalánosabb módja a programozott munkavégzésnek Excel fájlok. Lehetővé teszi az Excel által biztosított összes funkció használatát, de lassabb, mint más módszerek. Az OLE-n keresztüli cseréhez az MS Excel telepítése szükséges:

  • A végfelhasználó számítógépén, ha a csere a kliens oldalon történik;
  • Az 1C:Enterprise szerver számítógépen, ha a csere a szerver oldalon történik.

Példa kirakodás:

// Hozzon létre egy COM objektumot
Excel = Új COMObject("Excel.Alkalmazás");
// Figyelmeztetések és kérdések letiltása
Excel . displayalerts = false;
// Hozzon létre egy új könyvet
Könyv = Excel. munkafüzetek. add();
// Elhelyezés az első lapon
Lap = Könyv. Munkalapok (1);

// Érték írása a cellába
Lap . Cellák (Sorszám, Oszlopszám). Érték = CellValue;

// Mentse el a fájlt
Könyv . SaveAs(Fájlnév);


Excel . Kilépés();
Excel = 0;

Példák olvasás:

// -- 1.OPCIÓ --

// Hozzon létre egy COM objektumot
Excel = Új COMObject("Excel.Alkalmazás");
// Nyitott könyv
Könyv = Excel. munkafüzetek. Nyisd ki( A fájl elérési útja );

Lap = Könyv. Munkalapok (1);

// Bezárni a könyvet
Könyv . Bezár(0);

// Az Excel bezárása és a memória felszabadítása
Excel . Kilépés();
Excel = 0 ;

// —— 2. LEHETŐSÉG ——

// Nyitott könyv
Könyv = GetCOMObject( A fájl elérési útja );
// Elhelyezés a kívánt lapon
Lap = Könyv. Munkalapok (1);

// Olvassa el a cella értékét, általában itt található a cella bypass hurok
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;

// Bezárni a könyvet
Könyv . Alkalmazás. Qui t();

Mert kitérő Az Excel munkalap összes kitöltött sorában a következő trükköket használhatja:

// -- 1.OPCIÓ --
Sorok száma = Lap. Sejtek (1 , 1 ). SpecialCells(11 ). Sor;
For RowNumber = 1 Sorok száma szerint Hurok
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;
EndCycle;

// —— 2. LEHETŐSÉG ——
Sorszám = 0 ;
Míg a True Loop
LineNumber = Sorszám + 1 ;
CellValue = Lap. Cellák (Sorszám, Oszlopszám). érték;
Ha NEM ValueFilled(CellValue) Azután
elvetél;
EndIf;
EndCycle;

Ahelyett, hogy egymás után végigmenne a lap összes vonalán, megteheti kiírja az összes adatot egy tömbbeés dolgozz vele. Ez a megközelítés gyorsabb lesz nagy mennyiségű adat olvasásakor:

TotalColumns = Lap. Sejtek (1 , 1 ). SpecialCells(11 ). Oszlop;
TotalRows = Lap. Sejtek (1 , 1 ). SpecialCells(11 ). Sor;

Vidék = Lap. Tartomány(Lap. Cellák(1 , 1 ), List. Cells(Összes sor, Összes oszlop));
Adat = Terület. érték. kirak();

Az alábbi táblázat felsorolja a legkeresettebb tulajdonságokat és módszereket az Excel OLE-n keresztüli használatához:

Akció A kód Egy komment
Munka az alkalmazással
Alkalmazásablak láthatóságának beállítása Excel . látható= hamis;
A figyelmeztetés megjelenítési módjának beállítása (megjelenítés/nem kijelzés) Excel . Display Alerts= hamis;
Az alkalmazás bezárása Excel . Kilépés();
Munka könyvvel
Hozzon létre egy új könyvet Könyv = Excel. munkafüzetek. Hozzáadás();
Meglévő munkafüzet megnyitása Könyv = Excel. munkafüzetek. Open(Fájlnév);
Könyv mentése Könyv . Mentés másként (Fájlnév);
könyvzárás Könyv . Bezár(0);
Lappal dolgozni
Az aktuális lap beállítása Lap = Könyv. Munkalapok (SheetNumber);
Névbeállítás Lap . Név = Név;
Védelem beállítása Lap . Védje();
Védelem eltávolítása Lap . Védelem megszüntetése();
Az oldal tájolásának beállítása Lap . Oldal beállítása. Tájolás = 2; 1 - álló, 2 - fekvő
A bal oldali szegély beállítása Lap . Oldal beállítása. LeftMargin = Excel. Centimeters To Points (centiméter);
A felső határ beállítása Lap . Oldal beállítása. TopMargin = Excel. Centimeters To Points (centiméter);
A megfelelő szegély beállítása Lap . Oldal beállítása. RightMargin = Excel. Centimeters To Points (centiméter);
Az alsó határ beállítása Lap . Oldal beállítása. BottomMargin = Excel. Centimeters To Points (centiméter);
Munka sorokkal, oszlopokkal, cellákkal
Az oszlopszélesség beállítása Lap . Oszlopok(Oszlopszám). ColumnWidth = Szélesség;
Egy vonal eltávolítása Lap . Sorok(RowNumber). Töröl();
Oszlop törlése Lap . Oszlopok(Oszlopszám). töröl();
Egy cella törlése Lap . Cellák (Sorszám, Oszlopszám). Töröl();
Érték beállítása Lap . Cellák (Sorszám, Oszlopszám). Érték = Érték;
Cellák egyesítése Lap . Tartomány(Lap. Cellák(Sorszám, Oszlopszám), Lap. Cellák(Sorszám1, Oszlopszám1)). Összeolvad();
A betűtípus telepítése Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Név = FontName;
A betűméret beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Méret = FontSize;
Félkövér betűtípus beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Bátor = 1 ; 1 - félkövér, 0 - normál
Dőlt betű beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Dőlt = 1 ; 1 - dőlt, 0 - normál
Aláhúzott betűtípus beállítása Lap . Cellák (Sorszám, Oszlopszám). Betűtípus. Aláhúzás = 2 ; 2 - aláhúzva, 1 - nem

Annak érdekében, hogy megtudja, melyik tulajdonságot kell megváltoztatni, vagy melyik metódust kell meghívni, használhatja makrók Excel. Ha rögzít egy makrót a szükséges műveletekkel, akkor a programkódot megtekintheti a rögzített makró VBA-jában.

COMSafeArray használata

Ha nagy mennyiségű adatot tölt ki az 1C-ből az Excelbe, az objektumot felgyorsíthatja COMSafeArray. A szintaktikai segéd meghatározása szerint a COMSafeArray egy többdimenziós tömbön lévő objektumburkoló SafeArray a COM-tól. Lehetővé teszi a SafeArray létrehozását és használatát a COM-objektumok közötti adatcseréhez. Egyszerűen fogalmazva, ez egy olyan értéktömb, amely az OLE technológiát használó alkalmazások közötti cserére használható.

// COMSafeArray létrehozása
ArrayCom = Új COMSafeArray("VT_Variant", TotalColumns, TotalRows);
// A COMSafeArray feltöltése
Mert Str = 0 sor összesen – 1 hurok
Mert Szám = 0 összesen oszlop – 1 ciklus
ArrayCom . SetValue(szám, Str, érték);
EndCycle;
EndCycle;
// Az Excel-lap területértékeinek hozzárendelése a COMSafeArray-ből
Lap . Tartomány(Lap. Cellák(1 , 1 ), Lista. Cellák(Összes sor, Összes oszlop)). Érték = ArrayCom;

Csere ADO-n keresztül

Az ADO-n keresztül cserélt Excel-fájl egy olyan adatbázis, amely SQL-lekérdezésekkel érhető el. Az MS Excel telepítése nem szükséges, de egy ODBC illesztőprogram szükséges, amelyen keresztül történik a hozzáférés. A használt ODBC illesztőprogramot a fájl kapcsolati karakterláncának megadása határozza meg. Általában a szükséges illesztőprogram már telepítve van a számítógépen.

Az ADO-n keresztüli csere észrevehetően gyorsabb, mint az OLE-n keresztül, de kirakodáskor nincs lehetőség az Excel funkció használatára cellák díszítésére, oldalak jelölésére, képletek beállítására stb.

Példa kirakodás:


Kapcsolat = Új COMObject("ADODB.Kapcsolat");


Összetett . ConnectionString="

|DataSource=" + Fájlnév + ";
;
Összetett . nyisd ki(); // Kapcsolat megnyitása

// Hozzon létre egy COM objektumot a parancshoz
Parancs = Új COMObject("ADODB.Command");
Parancs

// Parancsszöveg hozzárendelése táblázat létrehozásához
Parancs . parancsszöveg= "TÁBLÁZAT LÉTREHOZÁSA [1. lap] (1. oszlop char(255), 2. oszlop dátuma, 3. oszlop int, 4. oszlop lebegés)";
Parancs . végrehajt(); // Parancsvégrehajtás

// Parancsszöveg hozzárendelése táblázatsor hozzáadásához
Parancs . parancsszöveg= "INSERT INTO [Sheet1] (1. oszlop, 2. oszlop, 3. oszlop, 4. oszlop) értékek ('abvgdeo', '2017-08-11', '12345', '12345,6789')";
Command.Execute(); // Parancsvégrehajtás

// A parancs törlése és a kapcsolat bezárása
parancs = undefined;
Összetett . Bezárás();
Kapcsolat = Undefined;

Új lap létrehozásához és szerkezetének kialakításához használhatja az objektumokat ADOX.KatalógusÉs ADOX.Táblázat. Ebben az esetben a kód így fog kinézni:

// Hozzon létre egy COM objektumot a könyvvel való együttműködéshez
Könyv = Új COMObject("ADOX.Katalógus");
Könyv . ActiveConnection = Kapcsolat;

// Hozzon létre egy COM objektumot a munkalap adatstruktúrájával való együttműködéshez
Táblázat = Új COMObject("ADOX.Tábla");
asztal . Név = "1. lap" ;
asztal . Oszlopok. Append("Oszlop1" , 202 );
asztal . Oszlopok. Append("Oszlop2" , 7 );
asztal . Oszlopok. Append("Oszlop3" , 5 );
asztal . Oszlopok. Append("4. oszlop" , 5 );

// Hozzon létre egy lapot a könyvben a leírt szerkezettel
Könyv . táblázatok. hozzáfűz(tábla);
táblázat = undefined;
könyv = undefined;

A fenti példában a módszerben

asztal . Oszlopok. Mellékel("1. oszlop", 202);

a második paraméter az oszlop típusát határozza meg. A paraméter nem kötelező, itt van néhány oszloptípus érték:

  • 5-adDouble;
  • 6 - adCurrency;
  • 7 - addDate;
  • 11 - adBoolean;
  • 202 - adVarWChar;
  • 203-adLongVarWChar.

Példa olvasás:

// Hozzon létre egy COM objektumot a kapcsolathoz
Kapcsolat = Új COMObject("ADODB.Kapcsolat");

// Kapcsolódási karakterlánc beállítása
Összetett . ConnectionString="
|Provider=Microsoft.ACE.OLEDB.12.0;
|DataSource=" + Fájlnév + ";
|Extended Properties=""Excel 12.0 XML;HDR=IGEN"";";
Összetett . nyisd ki(); // Kapcsolat megnyitása

// Hozzon létre egy COM objektumot a kijelölés fogadásához
Kijelölés = Új COMObject("ADODB.Rekordkészlet");
RequestText = "SELECT * FROM [Sheet1$]";

// Hajtsa végre a kérést
Minta . Open(QueryText, Connection);

// A kijelölés eredményének megkerülése
Miközben NEM mintavétel. EOF() Hurok
ColumnValue1 = Kijelölés. mezőket. Elem ("1. oszlop"). érték ; // Hivatkozás oszlopnév szerint
2. oszlop értéke = kijelölés. mezőket. Tétel(0 ). érték; // Lekérés oszlopindex alapján
Minta . MoveNext();
EndCycle;

Minta . Bezárás();
Minta = undefined;
Összetett . Bezárás();
Kapcsolat = undefined;

A kapcsolati karakterláncban a paraméter HDR meghatározza, hogy a lap első sora hogyan lesz érzékelve. Lehetséges opciók:

  • IGEN – az első sort az oszlopok neveként érzékeli. Az értékek név és oszlopindex alapján érhetők el.
  • NEM – Az első sor adatnak minősül. Az értékek csak oszlopindex segítségével érhetők el.

A megadott példákban csak néhány ADO objektumot vettünk figyelembe. Az ADO objektummodell a következő objektumokból áll:

  • kapcsolat;
  • parancs;
  • rekordkészlet;
  • rekord;
  • mezők;
  • Folyam;
  • hibák;
  • paraméterek;
  • tulajdonságait.

Feltöltés programozás nélkül

Az adatok 1C-ből Excelbe történő mentéséhez nem mindig tanácsos programozáshoz folyamodni. Ha Vállalati módban a felhasználó meg tudja jeleníteni a feltöltéshez szükséges adatokat, akkor ezek programozás nélkül Excelbe menthetők.

Táblázat-dokumentum (például egy jelentés eredményének) mentéséhez meghívhatja a parancsot Megment vagy Mentés másként… főmenü.

A megnyíló ablakban ki kell választani a mentett fájl könyvtárát, nevét és formátumát.

Az adatok mentéséhez dinamikus listák(például egy cikklista) a következőket kell tennie:

  1. A paranccsal küldje ki az adatokat egy táblázatba Tovább ⇒ Lista megjelenítése...;
  2. Mentse el a táblázatkezelő dokumentumot a kívánt formátumban.