Mikä on ohjelman nimi excelille 1c:ssä. Kumpi on parempi - 1C vai Excel? Lataa ilman ohjelmointia

On olemassa useita tapoja avata Excel-tiedosto 1C:ssä ja päinvastoin. Aloittelijat haluavat yksinkertaisempia toimintoja tallentamalla asiakirjan eri muotoon tai käyttämällä erityisiä ohjelmia. Mutta kannattaa käyttää vähän vaivaa ja opetella työskentelemään ohjelmistotyökalujen kanssa tietojen tarkastelemiseksi ja käsittelemiseksi ohjelmasta toiseen. Nämä perusohjelmointitaidot auttavat sinua välttämään rutiinitehtävät tulevaisuudessa.

Kuinka avata Excel-asiakirjoja 1C:ssä ja päinvastoin

Microsoft Excel -taulukkoeditori on toiminnaltaan ylivoimainen 1C-kirjanpitoohjelmistotuotteisiin verrattuna. Siksi 1C-käyttäjät haluavat suorittaa joitain toimintoja laskentataulukkoeditorissa ja palauttaa sitten tiedot kirjanpitoohjelmaan. Ja tämä ei ole yllättävää, koska aiemmin monien yritysten kirjanpito tehtiin yksinomaan Microsoft-ohjelmilla. Mutta yritysten liiketoimintaprosessien nykyisellä automatisointitasolla on mahdotonta luopua erikoisohjelmista. Voit luoda vuorovaikutuksen eri sovellusten välillä seuraavilla yksinkertaisilla tavoilla:

    Kun joudut käsittelemään ohjelmistotuotteiden tiedostoja, joita ei ole asennettu nykyiselle tietokoneellesi, helpoin tapa on käyttää erityistä sovellusta Excel-taulukoiden muuntamiseen 1C-muotoon ja päinvastoin. Se löytyy 1C-tuotteen verkkosivuilta.

    Jos tietokoneessasi on sekä 1C että Excel, voit avata tiedoston manuaalisesti sen "natiivisovelluksessa" ja tallentaa sen sitten toisen ohjelman muotoon. Tämä vaihtoehto on yleensä käytettävissä tulostettavaa tai asettelua tallennettaessa.

    1C 7.7:n käyttäjät voivat päivittää versioon 1C 8, jossa on parannettu taulukkoeditori.

Kuinka 1C ja Excel voivat olla vuorovaikutuksessa ohjelmallisesti

Vuorovaikutus 1C:n ja Excelin välillä voidaan suorittaa ohjelmatasolla Microsoftin kehittämällä OLE Automation -teknologialla. Sen avulla voit käyttää COM-objekteja suoraan eri ohjelmien komentosarjatulkkeilta. Yksinkertaisesti sanottuna OLE:n avulla voit siirtää työn yhdestä ohjelmasta toiseen ja palauttaa sen sitten alkuperäiseen sovellukseen. Juuri tätä kirjanpitäjät tarvitsevat Microsoftin laskentataulukkoeditorilta.

Sinun ei tarvitse olla ohjelmoija käyttääksesi OLE-työkaluja. Vaikka ensimmäiseen koodiriviin tutustumiseen liittyy virheitä, tarkistaminen auttaa tunnistamaan ne ja saatu kokemus auttaa välttämään niitä tulevaisuudessa. Alla on suosituimmat komennot (niitä kutsutaan listauksiksi) Excel-tietojen käsittelyyn kirjanpitoohjelmissa ja päinvastoin.

Kuinka avata Excel-tiedosto 1C:ssä ohjelmallisesti

Joten jos tietokoneellesi on asennettu molemmat ohjelmat, joiden välillä haluat vaihtaa tietoja, voit järjestää vuorovaikutuksen ohjelmallisesti. Tätä varten sinun on käynnistettävä molemmat sovellukset ja määritettävä sitten pääsy 1C:stä Exceliin OLE:n avulla:

  • Poikkeus

    Report(ErrorDescription() + "Exceliä ei ole asennettu tälle tietokoneelle!");

  • Yrityksen loppu.

Pääsy taulukkoeditoriin on asennettu, nyt seuraavien komentojen avulla sinun on päästävä:

    erityinen asiakirja:

    • Kirja = Excel.WorkBooks.Open(FilePath)

    • Sheet = Book.WorkSheets(SheetNumber);

  • mukaan lukien tietyllä arkkinumerolla:

    mukaan lukien tietyllä arkin nimellä:

    • Sheet = Book.WorkSheets(SheetName);

    • Arvo = Sheet.Cells(RowNumber, ColumnNumber).Arvo;

Voit lukea tietoja tiedoston ensimmäiseltä sivulta käyttämällä seuraavia luetteloita:

    Excel = CreateObject("Excel.Application");

    Kirja = Excel.WorkBooks.Open(FilePath);

    Sheet = Book.WorkSheets(1);

    Yhteensä Sarakkeet = Sheet.Cells(1,1).SpecialCells(11).Sarake;

    TotalRows = Sheet.Cells(1,1).SpecialCells(11).Row;

    Rivi = 1 TotalRows-silmukalla

    • Sarakkeelle = 1 Kokonaissarakkeiden syklillä

      Arvo = Abbr(Sheet.Cells(Row,Sarake).Arvo);

      EndCycle;

    EndCycle;

Muista, että tiedoston polku on määritettävä kokonaan. Kun tallennat asiakirjan nimen, et voi sisältää merkkejä, kuten \, /, :, *, ?, ", >,< и |.

Kuinka avata 1C-tiedosto Excelin kautta ohjelmallisesti

Tallentaaksesi tietoja Exceliin sinun tulee:

    tai avaa olemassa oleva asiakirja:

    • Kirja = Excel.WorkBooks.Open(Path to File) - analogisesti Excel-tiedoston lukemisen kanssa 1C:stä;

    tai lisää uusi:

    • Työkirja = Excel.WorkBooks.Add();

    Voit luoda uuden arkin uuteen asiakirjaan:

    • Sheet = Book.Sheets.Add();

    ja lisää soluun uusi arvo:

    • Sheet.Cells(RowNumber, ColumnNumber).Arvo = Arvo; (menetelmiä arvojen kirjoittamiseen OLE:n avulla on kuvattu yksityiskohtaisesti Internetissä).

  • Book.SaveAs(Tiedostopolku);

    Poikkeus

    Report(ErrorDescription()+"Tiedostoa ei tallennettu!");

    Yrityksen loppu.

Kun olet lopettanut työskentelyn laskentataulukkoeditorin kanssa, poistu käyttämällä erityistä komentoa (Excel.Application.Quit();). Tämä menetelmä auttaa säästämään tietokoneresursseja jatkotyön aikana.

Vaarat, kun tietoja vaihdetaan 1C:n ja Excelin välillä

1C ja Excel ovat eri yritysten kehittämiä, ja ne käyttävät erilaisia ​​tiedonkäsittelytapoja. Siksi, kun siirrät taulukoita ohjelmasta toiseen, muista seuraavat sudenkuopat:

    Erilaiset erottimet murtolukuina. Microsoft erottaa desimaaliluvut pilkulla. Siksi, kun siirrät taulukoita kirjanpito-ohjelmasta, älä ylläty päivämäärien runsaudesta ja muusta sekaannuksesta. On vain niin, että kirjanpito-ohjelmassa murtolukujen kirjoittamiseen voidaan käyttää pistettä, jonka Microsoftin taulukkoeditori tulkitsee päivämäärän erottimeksi ja 15.5 muuttuu toukokuun 15. päiväksi. Jotta kirjanpitotietoja voidaan käsitellä laskentataulukkoeditorissa, erotin on korvattava pilkulla.

    Kun tietoja siirretään Excelistä 1C:hen, ne Excel-vakiot, joita ei ole kirjanpitoohjelmassa, voivat näkyä väärin. Niiden tulkitsemiseksi sinun on siirryttävä laskentataulukkoeditorin ohjeeseen tai virheenkorjaustilaan ja tarkistettava eri vakioiden numeeriset lausekkeet.

Jos sinun on vaihdettava suuria tietomääriä tai et pääse eroon virheistä, ota yhteyttä Setby-yrityksen ammattilaisiin saadaksesi apua. Autamme sinua ratkaisemaan ongelmasi ohjelmatasolla ja ymmärtämään työssäsi tarvittavat komennot.

Melko usein, kun kommunikoin potentiaalisten asiakkaiden kanssa, kuulen, että toimistopaketin taulukkotoiminto on heille aivan riittävä, eivätkä he näe järkeä 1C-ohjelmissa. Tämä johtuu siitä, että jotkut ihmiset yhdistävät tämän ratkaisun edelleen vain kirjanpitäjille tarkoitettuihin ohjelmiin, mikä ei pidä paikkaansa.

Excel on universaali ja massatuote, siitä ei voi kiistellä. Melkein kaikki voivat käyttää tätä ohjelmaa, toisin kuin 1C-kehitys, joka on suunnattu kapeille asiantuntijoille. Käyttämällä "vihreitä" taulukoita voit vapaasti toteuttaa tarvittavat toiminnot, mikä on kätevää: tässä on organisaation taloudellinen malli kaikilla keskinäisillä selvityksillä, johdon kirjanpito, jopa säännellyt, laaja valikoima tietojen visualisointia, kyky itsenäisesti laajentaa ohjelman ominaisuuksia käyttämällä erilaisia ​​lisäosia - kaikki on sinun käsissäsi, kaikki tyhjästä...

On hyvä, jos olet vasta aloittamassa yritystäsi, ottamalla asteittain huomioon tarvittavat tiedot taulukossa suhteista asiakkaisiin, toimittajiin, valvontaviranomaisiin, rakentamalla omaa mielivaltaista rakennetta, mutta mitä tehdä seuraavaksi, kun tietokanta tulee suureksi ja henkilöstömäärät kymmenissä? Lasketko silti omien parametrien mukaan? Olen sen puolesta, että en sekoita mukavuutta tottumiseen, joka usein häiritsee liiketoiminnan systematisointia ja sitä kautta sen optimointia.

Selvyyden vuoksi kuvitellaan, mitä tarpeita voi syntyä kirjanpidon automatisoinnissa, esimerkiksi kaupankäynnissä:

1. Tietyn ajanjakson myynnin analyysi.

Myyntiosaston johtaja osaa analysoida myyntitietoja. Hänen on tärkeää ymmärtää, toteutetaanko suunnitelmaa, kuinka tehokkaita hänen strategiansa ovat, jotta tehottomuuden sattuessa hän voi tehdä työhön ajoissa muutoksia.

2. Varaston kirjanpito.
Pitääkö minun selittää, että myynnin kannalta on myös tärkeää ymmärtää tavaroiden saatavuus varastossa, mitkä tuotteet ovat varattavissa ja mitkä ovat loppuneet ja mitä pitää tilata? Minusta tässä on kaikki selvää.

3. Vastapuolten tietokannan ylläpito.
Vaikka omistaja myy vain sitä, mitä voi ostaa tässä ja nyt, mikä on tyypillistä B2C-sektorille, niin hänellä on hieman erilainen suhde toimittajakuntaan - sopimukset, ensisijainen... Kuvittele kuinka kätevää on, kun kaikki liittyy toimittaja on automaattisesti Näkyykö se välittömästi yhdessä tietokannassa? Varastosta vastaava johtaja näkee välittömästi tavaroiden saatavuuden varastossa, toinen asiakirjoista vastaava työntekijä seuraa tietoa niiden saatavuudesta, täyttyvätkö kaikki sopimussuhteen mukaiset velvoitteet, kuka on kenelle velkaa ja kuinka paljon. Ja jos on ristiriitaisuuksia, voit täsmäyttää tiedot tietyltä ajanjaksolta ja tuottaa tuloksen alle minuutissa.

4. Organisaation voitto.
Tulosraportin laatiminen ei ole vaikeaa, koska kaikki tiedot kuluista ja tuloista ovat jo tietokannassa. Edellyttäen, että tiedot syötetään ajoissa, vähintään vaadittuun päivämäärään mennessä. Perustekijä tässä on käyttäjän henkilökohtainen vastuu.

Jos sinulla ei ole paljon asiakkaita ja toimittajia, Excel sopii sinulle todella, koska taulukkoon on runsaasti aikaa suunnitella omat kaaviot ja täyttää ne, jonka jälkeen jaetaan asiakirjat tietokoneen eri kansioihin: sopimukset, toimittajat, asiakkaat, naapuruston asiakkaat, kehitteillä olevat asiakkaat, poistettavat asiakkaat – loputon ja kiehtova prosessi kansioiden luomiseksi kansiossa. Ja jos tietoa on paljon, onko kätevää pitää kirjaa tietokannastasi? Tietysti aina on poikkeuksia, joskus on suuria liikevaihdoltaan suuria organisaatioita, joiden taloustiedot säilyvät vain Excelissä. Kuinka paljon aikaa heiltä kuluu tietojen vaihtamiseen ja yhdistämiseen osastojen välillä? Vastaan: paljon.

En voi kuvitella, kuinka nopeasti löytää tarvitsemasi suuresta määrästä mielivaltaiseen järjestelmään järjestettyjä Excel-asiakirjoja. Esimerkiksi toimitettaessa asiakirjoja veroviraston vaatimuksia varten. Miten kirjanpitäjä toimittaa raportit valvontaviranomaisille, kun kaikki tiedot ovat hajallaan? Kirjanpito voidaan tietysti ulkoistaa, ja jotkut yrittäjät eivät valitettavasti välitä siitä, mitä prosesseja tietyllä asiantuntijalla voi olla, kunhan hän tasapainottaa saldot. Mutta vaikka olisikin, miten asiakirjojen vaihtoprosessi on järjestetty? Kuinka nopeasti ulkopuolinen työntekijä ymmärtää improvisoidun tietorakenteen?

En voi sanoa samaa 1C:stä, koska kaikki siellä oleva tieto on jäsenneltyä ja kytketty toisiinsa:

    Yksi tietokanta sekä etä- että kokopäiväisille työntekijöille, jossa voit käsitellä kaikkia standardoituja ja mukautettuja asiakirjoja;
    Raportointi valvontaviranomaisille syntyy ohjelmassa jo näkyvien tietojen perusteella, ei tarvitse avata useita tiedostoja, yhdistää useita arvoja yhdeksi taulukoksi lopputuloksen saamiseksi.
”1C” on hyvällä tavalla moniajojärjestelmä, joka on suunnattu sekä tyypillisiin kirjanpitotehtäviin että kaikkien organisaation prosessien automatisointiin toimialasta riippuen. Pääsana tässä on järjestelmä. Kukaan ei estä sinua organisoimasta liiketoimintajärjestelmääsi Excelissä, mutta miksi keksiä pyörää uudelleen, kun on olemassa ratkaisuja, jotka kattavat lähes kaikki tarpeet ajan ja taloudellisten kustannusten optimointiin ja työn systematisointiin?

Excelin puolustamiseksi

Sinusta luultavasti näytti, että vastustan tietojen rakentamista "vihreisiin" taulukoihin. Ei lainkaan. Itse asiassa teen itse usein asioita Excelissä: jos tarvitsen mielivaltaisia ​​laskelmia, jos minun on segmentoitava tiedot asiakkaan mukaan, suoritan analytiikkaa parametrien perusteella, jotka eivät ole 1C:ssä - kyllä, näin tapahtuu - menen "Exceliin". Yksinkertaisesti sanottuna teen taulukoissa laskelmia ja epätyypillisiä analyyseja, mutta sitten systematisoin kaiken 1C: ssä.

Ja sitten, jotta voit tarkastella ladattuja tiedostoja 1C:stä, tarvitset edelleen Excelin, koska 1C:n tiedot tallennetaan laskentataulukoihin. Tuntuuko sinusta, että tämä on noidankehä? Sanon sen toisin: "1C" ja "Excel" kulkevat rinnakkain kuin kaksi kumppania, mutta jokaisella on oma tarkoituksensa, ne täydentävät toisiaan hyvin, mutta eivät korvaa toisiaan.

Jos sinun on systematisoitava asiasi ottaen huomioon valtiomme lainsäädäntöjärjestelmä, ottaen huomioon liiketoiminnan erityispiirteet ja painopisteet, etenkin kun on kyse suurista tietomääristä, tarvitset 1C. Jos tarvitset mielivaltaisia ​​laskelmia, rakentaa strategia tyhjästä, visualisoida ei-standardi analytiikkatietoja, Excel on palveluksessasi. Mutta on paljon mukavampaa työskennellä näiden ratkaisujen kanssa samanaikaisesti.


Mikä on lopputulos - "1C" vai "Excel"?

Heti alussa, jos kysymys on automaation rahoituksesta, vaikka perus 1C-ohjelmat eivät maksa niin paljon rahaa, käyttäisin Exceliä. Valtava plussa on, että tiedot "vihreistä" taulukoista voidaan ladata 1C: hen ilman häviötä. Mutta kun skaalaat, suosittelen kiinnittämään huomiota liiketoimintaprosessien automatisointiohjelmiin. Niitä on monia, eikä se välttämättä ole 1C...

Siirtyminen 1C:hen voidaan suorittaa, kun ymmärrät, että sinun on optimoitava resurssit, mukaan lukien automatisointiasiat, jotka liittyvät suhteisiin asiakkaisiin ja toimittajiin sekä valvontaviranomaisiin. Yleensä säädä työprosessejasi liiketoiminnan tehostamiseksi, kun tietojen käsittely vie paljon aikaa ja Excel-tiedostot eivät enää kestä syötetyn tiedon määrää.

Jokainen "1C" ei kuitenkaan välttämättä sovi sinulle, vaan sinun on otettava huomioon erilaiset tekijät: liiketoiminnan erityispiirteet ja laajuus, mittakaava, päivittäisten tehtävien tarve, minimoitava rutiini. Kaikki on yksilöllistä. Totuus, kuten jo sanoin, on jossain "1C" ja "Excel" välillä - se täydentää toisiaan.

Siinä varmaan kaikki. Mutta jos sinulla on kysyttävää, ota meihin yhteyttä, yritämme auttaa sinua. Onnistuneet liiketoimintaprosessit, kollegat!

Tämä menetelmä on yksinkertainen. Sen ydin on, että esine Taulukkoasiakirja on menetelmiä:

  • Kirjoita ylös (< ИмяФайла>, < ТипФайлаТаблицы >) ladata tietoja tiedostoon;
  • Lukea (< ИмяФайла>, < СпособЧтенияЗначений >) ladataksesi tietoja tiedostosta.

Huomio!

Write()-menetelmä on käytettävissä sekä asiakkaalla että palvelimella. Read()-menetelmä on käytettävissä vain palvelinpuolella. Tämä täytyy muistaa
suunniteltaessa asiakas-palvelin vuorovaikutusta.

Katsotaanpa esimerkkiä laskentataulukkoasiakirjan tallentamisesta tiedostoon. TabularDocument-objekti on luotava ja täytettävä millä tahansa tavalla, ja purku tiedostoon tehdään vain yksi rivi:

TabDoc . Write(Tiedostopolku, Taulukkodokumenttitiedostotyyppi. XLSX);

Tässä TabDoc- luotu laskentataulukkoasiakirja, Tiedoston polku- ladattavan tiedoston nimi, TabularDocumentFileType.XLSX— luodun tiedoston muoto. Seuraavia Excel-muotoja tuetaan:

  • XLS95 - Excel 95 -muoto;
  • XLS97 - Excel 97 -muoto;
  • XLSX on Excel 2007 -muoto.

TabDoc = Uusi taulukkodokumentti;
TabDoc . Read(PathToFile, Method of ReadingTabularDocumentValues.Value);

Tässä Tiedoston polku— polku ladattavaan Excel-tiedostoon. Taulukkoasiakirjan arvojen lukemismenetelmä. Arvo määrittää, kuinka lähdeasiakirjasta luetut tiedot tulee tulkita. Käytettävissä olevat vaihtoehdot:

  • Merkitys;
  • Teksti.

Vaihto OLE:n kautta

Exchange OLE-automaatiotekniikan kautta on ehkä yleisin vaihtoehto Excel-tiedostojen ohjelmalliseen työskentelyyn. Sen avulla voit käyttää kaikkia Excelin tarjoamia toimintoja, mutta se on hitaampaa verrattuna muihin menetelmiin. OLE:n kautta vaihtamiseen tarvitaan MS Excel -asennus:

  • Loppukäyttäjän tietokoneella, jos vaihto tapahtuu asiakaspuolella;
  • 1C:Enterprise-palvelintietokoneessa, jos vaihto tapahtuu palvelinpuolella.

Esimerkki purku:

// Luo COM-objekti
Excel = Uusi COMObject("Excel.Application");
// Poista varoitukset ja kysymykset käytöstä
Excel . DisplayAlerts = False;
// Luo uusi kirja
Kirja = Excel. Työkirjat. Lisätä();
// Sijainti ensimmäisellä arkilla
Arkki = Kirja. Työarkit(1);

// Kirjoita arvo soluun
Arkki . Solut (Rivinumero, Sarakenumero). Arvo = CellValue;

// Tallenna tiedosto
Kirja . SaveAs(Tiedostonimi);


Excel . Lopettaa();
Excel = 0;

Esimerkkejä lukeminen:

// -- VAIHTOEHTO 1 --

// Luo COM-objekti
Excel = Uusi COMObject("Excel.Application");
// Avaa kirja
Kirja = Excel. Työkirjat. Avata( Tiedoston polku );

Arkki = Kirja. Työarkit(1);

// Kirjan sulkeminen
Kirja . Sulje(0);

// Sulje Excel ja vapauta muistia
Excel . Lopettaa();
Excel = 0;

// —— VAIHTOEHTO 2 ——

// Avaa kirja
Kirja = HankiCOMObject( Tiedoston polku );
// Sijoittaminen halutulle arkille
Arkki = Kirja. Työarkit(1);

// Lue solun arvo, yleensä solun läpikulkusilmukka sijaitsee tässä
CellValue = Sheet. Solut (Rivinumero, Sarakenumero). Arvo;

// Kirjan sulkeminen
Kirja . Sovellus. Qui t();

varten ohittaa Voit käyttää seuraavia tekniikoita Excel-laskentataulukon kaikilla valmiilla riveillä:

// -- VAIHTOEHTO 1 --
Rivien määrä = Arkki. Solut (1, 1). SpecialCells(11). Rivi;
Rivinumerolle = 1 rivien lukumäärän mukaan
CellValue = Sheet. Solut (Rivinumero, Sarakenumero). Arvo;
EndCycle;

// —— VAIHTOEHTO 2 ——
Rivinumero = 0;
Totuuden syklin aikana
Rivinumero = Rivinumero + 1 ;
CellValue = Sheet. Solut (Rivinumero, Sarakenumero). Arvo;
Jos EI ArvoTäytetty(CellValue) Sitten
Keskeyttää;
loppu Jos;
EndCycle;

Sen sijaan, että kulkisit taulukon kaikki rivit peräkkäin, voit tehdä sen upota kaikki tiedot taulukkoon ja työskentele hänen kanssaan. Tämä lähestymistapa on nopeampi, kun luetaan suuri määrä dataa:

TotalColumns = Sheet. Solut (1, 1). SpecialCells(11). sarake;
TotalRows = Lehti. Solut (1, 1). SpecialCells(11). Rivi;

Alue = Lehti. Alue(taulukko. Solut(1, 1), Sheet. Cells(Rivit yhteensä,Sarakkeet yhteensä));
Data = Alue. Arvo. Purkaa();

Alla oleva taulukko näyttää suosituimmat ominaisuudet ja menetelmät Excelin työskentelyyn OLE:n kautta:

Toiminta Koodi Kommentti
Työskentely sovelluksen kanssa
Sovellusikkunan näkyvyyden asettaminen Excel . Näkyy= Väärä;
Varoituksen lähtötilan asettaminen (näyttö/ei näyttöä) Excel . Display Alerts= Väärä;
Sovelluksen sulkeminen Excel . Lopettaa();
Työskentely kirjan kanssa
Uuden kirjan luominen Kirja = Excel. Työkirjat. Lisätä();
Olemassa olevan työkirjan avaaminen Kirja = Excel. Työkirjat. Open(Tiedostonimi);
Kirjan tallentaminen Kirja . SaveAs(Tiedostonimi);
Kirjan sulkeminen Kirja . Sulje(0);
Työskentely arkin kanssa
Nykyisen arkin asettaminen Arkki = Kirja. Työarkit (SheetNumber);
Nimen asettaminen Arkki . Nimi = Nimi;
Suojauksen asettaminen Arkki . Suojella();
Suojauksen poistaminen Arkki . Poista suojaus();
Sivun suunnan asettaminen Arkki . Sivuasetukset. Suunta = 2; 1 - muotokuva, 2 - vaaka
Vasemman reunan asettaminen Arkki . Sivuasetukset. LeftMargin = Excel. CentimetersTo Points (senttimetriä);
Ylärajan asettaminen Arkki . Sivuasetukset. TopMargin = Excel. CentimetersTo Points (senttimetriä);
Oikean reunan asettaminen Arkki . Sivuasetukset. RightMargin = Excel. CentimetersTo Points (senttimetriä);
Alarajan asettaminen Arkki . Sivuasetukset. BottomMargin = Excel. CentimetersTo Points (senttimetriä);
Työskentely rivien, sarakkeiden, solujen kanssa
Sarakkeen leveyden asettaminen Arkki . Sarakkeet(SarakeNumber). ColumnWidth = Leveys;
Poista rivi Arkki . Rivit (Rivinumero). Poistaa();
Sarakkeen poistaminen Arkki . Sarakkeet(SarakeNumber). Poistaa();
Poista solu Arkki . Solut (Rivinumero, Sarakenumero). Poistaa();
Arvon asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Arvo = arvo;
Solujen yhdistäminen Arkki . Alue (taulukko. Solut (Rivinumero, sarakkeen numero), taulukko. solut (rivinumero1, sarakenumero1)). Yhdistää();
Fontin asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Fontti. Nimi = Kirjasinnimi;
Fonttikoon asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Fontti. Koko = kirjasinkoko;
Lihavoidun fontin asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Fontti. Lihavoitu = 1 ; 1 - lihavoitu, 0 - normaali
Kursiivin asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Fontti. Kursiivi = 1 ; 1 - kursivoitu, 0 - normaali
Alleviivatun fontin asettaminen Arkki . Solut (Rivinumero, Sarakenumero). Fontti. Korostaa = 2 ; 2 - alleviivattu, 1 - ei

Voit selvittää, mitä ominaisuutta on muutettava tai millä tapaa soittaa makroja Excel. Jos tallennat makron vaadituilla toimilla, voit katsoa tallennetun makron VBA-koodia.

COMSafeArrayn käyttäminen

Kun lataat suuria tietomääriä 1C:stä Exceliin, voit käyttää objektia nopeuttamaan COMSafeArray. Syntaksiavustajan määritelmän mukaan COMSafeArray on moniulotteisen taulukon objektikääre. SafeArray COM:sta. Mahdollistaa SafeArrayn luomisen ja käytön tietojen vaihtamiseen COM-objektien välillä. Yksinkertaisesti sanottuna se on joukko arvoja, joita voidaan käyttää sovellusten välillä OLE-tekniikkaa käyttävien sovellusten välillä.

// Luo COMSafeArray
ArrayCom = Uusi COMSafeArray("VT_Variant" , TotalColumns, TotalRows);
// Täytä COMSafeArray
varten Sivu = 0 TotalLinesin mukaan - 1 sykli
varten Lukumäärä = 0 sarakkeita yhteensä - 1 sykli
ArrayCom . AsetaArvo(määrä, sivu, arvo);
EndCycle;
EndCycle;
// Excel-laskentataulukkoalueen määrittäminen arvoille COMSafeArraysta
Arkki . Alue(taulukko. Solut(1, 1), taulukko. Solut(Rivit yhteensä,Sarakkeet yhteensä)). Arvo = ArrayCom;

Vaihto ADO:n kautta

Excel-tiedosto, kun se vaihdetaan ADO:n kautta, on tietokanta, jota voidaan käyttää SQL-kyselyillä. MS Excelin asennusta ei vaadita, mutta ODBC-ajurin läsnäolo vaaditaan, jolla pääsy suoritetaan. Käytetty ODBC-ohjain määritetään määrittämällä tiedoston yhteysmerkkijono. Yleensä vaadittu ohjain on jo asennettu tietokoneeseen.

Vaihto ADO:n kautta on huomattavasti nopeampaa kuin vaihto OLE:n kautta, mutta ladattaessa ei ole mahdollista käyttää Excel-toimintoa solujen suunnitteluun, sivujen asetteluun, kaavojen asettamiseen jne.

Esimerkki purku:


Yhteys = Uusi COMObject("ADODB.Yhteys");


Yhdiste . ConnectionString = "

|Tietolähde=" + Tiedostonimi + ";
;
Yhdiste . Avata(); // Avaa yhteys

// Luo COM-objekti komennolle
Komento = Uusi COMObject("ADODB.Komento");
Tiimi

// Komentotekstin määrittäminen taulukon luomiseksi
Tiimi . Komentoteksti = "LUO TAULUKKO [Sheet1] (Sarake1 merkki(255), Sarake2 päivämäärä, Sarake 3 int, Sarake 4 float)";
Tiimi . Suorittaa(); // Suorita komento

// Komentotekstin määrittäminen taulukkorivin lisäämiseksi
Tiimi . Komentoteksti = "INSERT INTO [Sheet1] (Sarake1, Sarake 2, Sarake 3, Sarake 4) arvot ('abvwhere', '8/11/2017', '12345', '12345,6789')";
Command.Execute(); // Suorita komento

// Poista komento ja sulje yhteys
Komento = Undefined;
Yhdiste . kiinni();
Yhteys = määrittelemätön;

Voit luoda uuden arkin ja muodostaa sen rakenteen käyttämällä objekteja ADOX.Katalogi Ja ADOX.Taulukko. Tässä tapauksessa koodi näyttää tältä:

// Luo COM-objekti kirjan käsittelyä varten
Kirja = Uusi COMObject("ADOX.Katalogi");
Kirja . ActiveConnection = Yhteys;

// Luo COM-objekti, joka toimii taulukon tietorakenteen kanssa
Taulukko = Uusi COMObject("ADOX.Table");
Pöytä . Nimi = "Sheet1" ;
Pöytä . Sarakkeet. Liitä("Sarake1", 202);
Pöytä . Sarakkeet. Append("Sarake2", 7);
Pöytä . Sarakkeet. Append("Sarake3", 5);
Pöytä . Sarakkeet. Append("Sarake4", 5);

// Luo työkirjaan kuvatulla rakenteella taulukko
Kirja . Taulukot. Liitä(taulukko);
Taulukko = määrittelemätön;
Kirja = Undefined;

Yllä olevassa esimerkissä menetelmässä

Pöytä . Sarakkeet. Liitä("Sarake 1", 202);

toinen parametri määrittää sarakkeen tyypin. Parametri on valinnainen, tässä on joitain saraketyyppien arvoja:

  • 5 - adDouble;
  • 6 - adCurrency;
  • 7 - lisäyspäivä;
  • 11 - adBoolean;
  • 202 - adVarWChar;
  • 203 - adLongVarWChar.

Esimerkki lukeminen:

// Luo yhteydelle COM-objekti
Yhteys = Uusi COMObject("ADODB.Yhteys");

// Aseta yhteysmerkkijono
Yhdiste . ConnectionString = "
|Provider=Microsoft.ACE.OLEDB.12.0;
|Tietolähde=" + Tiedostonimi + ";
|Extended Properties=""Excel 12.0 XML;HDR=KYLLÄ"";";
Yhdiste . Avata(); // Avaa yhteys

// Luo COM-objekti valinnan vastaanottamiseksi
Select = Uusi COMObject("ADODB.Recordset");
RequestText = "VALITSE * FROM [Sheet1$]";

// Suorita pyyntö
Näyte . Open(QueryText, Connection);

// Ohita näytetulos
Ei vielä valintaa. EOF() Silmukka
Sarakkeen 1 arvo = valinta. Kentät. Kohde ("Sarake1"). Arvo ; // Pääsy sarakkeen nimen mukaan
Column2Value = Valinta. Kentät. Tuote (0). Arvo; // Pääsy sarakeindeksin mukaan
Näyte . MoveNext();
EndCycle;

Näyte . Kiinni();
Näyte = määrittelemätön;
Yhdiste . Kiinni();
Yhteys = Undefined;

Yhteysmerkkijonossa parametri HDR määrittää, kuinka arkin ensimmäinen rivi havaitaan. Mahdolliset vaihtoehdot:

  • KYLLÄ - ensimmäistä riviä käsitellään sarakkeiden niminä. Arvoihin pääsee käsiksi nimellä ja sarakeindeksillä.
  • EI - ensimmäistä riviä käsitellään datana. Arvoihin pääsee vain sarakeindeksillä.

Nämä esimerkit kattavat vain muutamia ADO-objekteja. ADO-objektimalli koostuu seuraavista objekteista:

  • yhteys;
  • Komento;
  • levysarja;
  • Ennätys;
  • Kentät;
  • Stream;
  • Virheet;
  • parametrit;
  • Ominaisuudet.

Lataa ilman ohjelmointia

Tietojen tallentamiseksi 1C:stä Exceliin ei ole aina suositeltavaa turvautua ohjelmointiin. Jos Enterprise-tilassa käyttäjä voi näyttää lataamiseen tarvittavat tiedot, niin ne voidaan tallentaa Exceliin ilman ohjelmointia.

Voit tallentaa laskentataulukkoasiakirjan (esimerkiksi raportin tuloksen) kutsumalla komennon Tallentaa tai Tallenna nimellä… päävalikko.

Avautuvassa ikkunassa sinun on valittava tallennetun tiedoston hakemisto, nimi ja muoto.

Jos haluat tallentaa tietoja dynaamisista luetteloista (esimerkiksi nimikeluettelosta), sinun on:

  1. Tulosta tiedot laskentataulukkoasiakirjaan komennolla Lisää ⇒ Lista...;
  2. Tallenna taulukkoasiakirja vaaditussa muodossa.

1C:ssä on kaksi tapaa työskennellä MS Excel -tiedostojen kanssa: COM-objektin ja sisäänrakennettujen 1C-työkalujen avulla laavulla. Tarkastellaan näitä molempia menetelmiä yksityiskohtaisemmin.

1. Työskentele COM-objektin läpi.

Tämä menetelmä vaatii asennetun MS Excelin, ja jos työskentelet palvelimella olevan tiedoston kanssa, MS Excel on asennettava palvelimelle, jos asiakkaalle, niin MS Excel vaaditaan myös asiakaspuolella.

Esimerkki (näet sen tekstimuodossa artikkelin lopusta):

On huomattava, että kaikki COM-objektin "Excel.Application" tarjoamat objektit, menetelmät ja ominaisuudet ovat VBA:n, MS Office -ohjelmointikielen, objekteja, menetelmiä ja ominaisuuksia.

Huomautus:

Joskus sinun on työskenneltävä olemassa olevan mallin kanssa. Sitten meidän on tallennettava tämä malli jonnekin, jotta kaikilla tarvittavilla käyttäjillä on pääsy siihen. On kuitenkin olemassa yksinkertaisempi ratkaisu, tallenna malli binääriasetelmana.

2. Käy läpi taulukkoasiakirja 1C.

1C-taulukkodokumentti tukee MS Excel -muotoa tallentamiseen alustasta 8 alkaen, mutta avaamista vain alustasta 8.3.6 alkaen. Lisäksi avattaessa kaikki arkit ladataan yhteen laskentataulukkoasiakirjaan. Versiosta 8.3.10 lähtien eri arkit ladataan eri alueiksi ladattaessa.

Esimerkkimerkintä on hyvin yksinkertainen eikä vaadi erityistä huomiota:

Tässä meillä on kuitenkin ongelma. Kun tallennetaan 1C:stä Excel-työkirjaan, arkkien nimien näyttö on oletusarvoisesti poissa käytöstä.

Tämä ongelma voidaan ratkaista kahdella tavalla: 1 - itse kirjassa, ota arkkien näyttäminen käyttöön asetuksissa (kaikki käyttäjät eivät suostu tekemään tätä), 2 - tee tämä COM-objektin kautta (tarvitaan jälleen asennettuna MS Excel ).

Tämän pienen lisäyksen jälkeen arkkien tarrat näkyvät MS Excel -tiedostossa.

MS Excelin lukeminen ei ole niin helppoa, koska lukumenetelmä on käytettävissä vain palvelimella tai paksulla asiakaskoneella. Tätä varten meidän on siirrettävä MS Excel -tiedosto palvelimelle.

&OnClient

Toimenpide CreateDocument()

Poikkeus

EndAttempt;

Kirja = Excel.WorkBooks.Add(); //Luo uusi MS Excel -työkirja

Sheet = Book.WorkSheets.Add(); //Lisää arkki

Sheet.Name = "Esimerkki kohdasta 1C"; //Aseta arkin nimi

Sheet.Cells(1,1).Value = "Luo kaava";!}

Sheet.Cells(2,1).Arvo = 1;

Sheet.Cells(2,2).Arvo = 2;

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

Sheet.Cells(3,1).Arvo = CurrentDate();

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

Book.Close();

Menettelyn loppu

&Palvelimella

Funktio GetLayoutServer()

Return FormAttributesValue("Object").GetLayout("TemplateForUpload"); //Näin saamme ulkoisen käsittelyn asettelun;

EndFunction

&OnClient

Toimenpide Työ()

Excel = Uusi COMObject("Excel.Application");

Poikkeus

Report("Yritetty yhdistää Excel-komponentti epäonnistui. Exceliä ei ehkä ole asennettu tälle tietokoneelle!");

EndAttempt;

Layout = GetLayoutServer();

Layout.Write(TemporaryFileName);

Onko sinulla kysyttävää tai tarvitsetko apua konsultilta?

Kirja = Excel.WorkBooks.Open(TemporaryFileName);

SheetTemplate = Book.WorkSheets(1);

SheetTemplate.Cells(6,1).Value = "Päivämäärä:";!}

SheetTemplate.Cells(6,2).Arvo = CurrentDate();

SheetTemplate.NumberFormat = "pp/kk/vv;@"; // Anna päivämäärämuoto, tämä muoto on saatu tallentamalla makro MS Exceliin

SheetTemplate.Columns("B:B").EntireColumn.AutoFit; // Venytä saraketta niin, että päivämäärä sopii täsmälleen

Book.SaveAs(Tiedostonimi);

Book.Close();

Menettelyn loppu

&OnClient

Menettelyn loppu

&OnClient

Toimenpide WriteTabularDocument()

TabulaarinenDocument = Uusi TaulukkoDocument();

TabularDocument.Area("R1C1").Text = "Esimerkki tietueesta MS Excelissä 1C:stä";

TabularDocument.Write("C:\1\Test2.xls",TabularDocumentFileType.XLSX);

Excel = Uusi COMObject("Excel.Application");

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()

Menettelyn loppu

BinaryData = Uusi BinaryData("C:\1\test2.xlsx");

Address=PlaceInTemporaryStorage(BinaryData,ThisForm.UniqueIdentifier);

TabularDocument = UploadOnServer(Osoite);

TaulukkoDocument.Show();

Menettelyn loppu

&Palvelimella

Toiminto UploadOnServer (osoite)

TemporaryFileName = GetTemporaryFileName("xlsx");

FileData = GetFromTemporaryStorage(Osoite);

FileData.Write(TemporaryFileName);

TabulaarinenDocument = Uusi TaulukkoDocument();

palauttaa TabularDocument;