10.03.2022
Rumah / Konsol permainan / Bagaimana cara menambahkan tabel excel ke 1s. Mana yang lebih baik - "1C" atau "Excel"? Apakah Anda memiliki pertanyaan atau memerlukan bantuan dari konsultan?

Bagaimana cara menambahkan tabel excel ke 1s. Mana yang lebih baik - "1C" atau "Excel"? Apakah Anda memiliki pertanyaan atau memerlukan bantuan dari konsultan?

Cukup sering, ketika berkomunikasi dengan klien potensial, saya mendengar bahwa mereka memiliki fungsionalitas tabel yang cukup dari suite kantor, dan mereka tidak melihat gunanya dalam program 1C. Ini karena beberapa masih mengaitkan solusi ini hanya dengan program akuntansi, yang tidak benar.

Excel adalah produk universal dan massal, Anda tidak dapat membantahnya. Hampir semua orang dapat menggunakan program ini, tidak seperti pengembangan "1C", yang ditujukan untuk spesialis sempit. Menggunakan tabel "hijau", Anda dapat secara sewenang-wenang menerapkan fungsionalitas yang diperlukan yang akan nyaman: ini adalah model keuangan organisasi dengan semua penyelesaian bersama, akuntansi manajemen, bahkan diatur, banyak pilihan visualisasi data, kemampuan untuk memperluas program kemampuan sendiri menggunakan berbagai add-on - semuanya ada di tangan Anda semua dari awal...

Ada baiknya jika Anda baru memulai bisnis Anda, secara bertahap mempertimbangkan data yang diperlukan dalam tabel tentang hubungan dengan pelanggan, pemasok, otoritas pengatur, membangun struktur arbitrer Anda, tetapi apa yang harus dilakukan selanjutnya ketika database menjadi banyak, dan staf akan berada di puluhan? Semua sama untuk mempertimbangkan menurut parameter mereka sendiri? Saya mendukung tidak membingungkan kenyamanan dengan kebiasaan, yang sering mengganggu sistematisasi bisnis, dan, akibatnya, pengoptimalannya.

Untuk kejelasan, mari kita bayangkan kebutuhan apa yang mungkin muncul dalam otomatisasi akuntansi, misalnya, dalam perdagangan:

1. Analisis penjualan dalam periode tertentu.

Kepala departemen penjualan dapat menganalisis data penjualan. Lagi pula, penting baginya untuk memahami apakah rencana itu dilaksanakan, seberapa efektif strateginya, untuk membuat penyesuaian tepat waktu jika terjadi inefisiensi.

2. Akuntansi gudang.
Perlukah saya jelaskan bahwa sales juga penting untuk memahami ketersediaan barang yang ada dalam stok, barang mana yang bisa dipesan dan mana yang sudah habis, dan apa saja yang perlu dipesan? Saya pikir semuanya jelas di sini.

3. Memelihara database counterparty.
Bahkan jika pemiliknya hanya menjual apa yang dapat Anda beli di sini dan sekarang, yang khas untuk sektor B2C, maka ia memiliki hubungan yang sedikit berbeda dengan basis pemasok - kontrak, primer ... Bayangkan betapa nyamannya ketika segala sesuatu yang berhubungan dengan pemasok secara otomatis langsung ditampilkan dalam satu database? Manajer yang bertanggung jawab atas gudang segera melihat ketersediaan barang di gudang, karyawan lain yang bertanggung jawab atas dokumen memantau informasi tentang ketersediaannya, apakah semua kewajiban dalam hubungan kontrak dipenuhi, siapa yang berutang siapa dan berapa banyak. Dan jika ada perbedaan, Anda dapat memeriksa data untuk periode tertentu, menghasilkan hasil dalam waktu kurang dari satu menit.

4. Keuntungan organisasi.
Tidak akan sulit untuk membuat laporan laba, karena semua data pengeluaran dan pendapatan sudah ada di database. Asalkan informasi dimasukkan pada waktu yang tepat, setidaknya pada tanggal yang diperlukan. Di sini faktor mendasar adalah tanggung jawab pribadi pengguna.

Jika Anda tidak memiliki banyak klien dan pemasok, Excel akan sangat cocok untuk Anda, karena ada banyak waktu untuk merancang skema Anda sendiri di tabel dan mengisinya, dengan distribusi dokumen selanjutnya ke berbagai folder di komputer Anda: kontrak, pemasok, klien, klien di lingkungan sekitar, klien dalam pengembangan, klien yang akan dihapus - proses pembuatan folder yang tak ada habisnya dan mengasyikkan di dalam folder. Dan jika ada banyak informasi, apakah nyaman untuk menyimpan catatan database Anda dalam kasus ini? Tentu saja, selalu ada pengecualian, terkadang ada organisasi dengan perputaran besar, yang data keuangannya hanya disimpan di Excel. Berapa lama waktu yang dibutuhkan mereka untuk bertukar dan menggabungkan data antar departemen? Jawaban: banyak.

Saya tidak tahu cara cepat menemukan yang tepat di sejumlah besar dokumen Excel yang diatur oleh sistem yang sewenang-wenang. Misalnya saat menyerahkan dokumen persyaratan perpajakan. Bagaimana seorang akuntan akan menyerahkan laporan kepada otoritas pengatur ketika semua informasi tersebar? Akuntansi, tentu saja, dapat dialihdayakan dan beberapa pemilik bisnis, sayangnya, mungkin tidak peduli dengan proses apa yang mungkin dimiliki oleh spesialis tertentu, selama ia menyeimbangkan. Namun jika demikian, bagaimana proses pertukaran dokumen diatur? Seberapa cepat seorang karyawan di samping memahami struktur informasi dadakan?

Saya tidak bisa mengatakan hal yang sama tentang 1C, karena semua informasi di sana terstruktur dan saling berhubungan:

    Basis data tunggal untuk karyawan jarak jauh dan penuh waktu, di mana Anda dapat bekerja dengan semua dokumen standar dan sewenang-wenang;
    Pelaporan ke pihak yang berwenang berdasarkan data yang sudah tercermin dalam program, tidak perlu membuka banyak file, mengurangi beberapa nilai menjadi satu tabel untuk mendapatkan hasil akhir.
"1C", dengan cara yang baik, adalah sistem multitasking yang ditujukan untuk tugas-tugas akuntansi biasa dan untuk mengotomatisasi semua proses organisasi, tergantung pada bidang kegiatan. Kata kuncinya di sini adalah sistem. Tidak ada yang mengganggu Anda untuk mengatur sistem bisnis Anda di Excel, tetapi mengapa menemukan kembali roda ketika ada solusi yang mencakup hampir semua kebutuhan dalam mengoptimalkan waktu dan biaya keuangan, membantu mensistematisasikan pekerjaan?

Untuk membela Excel

Mungkin, bagi Anda tampaknya saya menentang membangun data di tabel "hijau". Tidak semuanya. Bahkan, saya sendiri sering melakukan beberapa bisnis di Excel: jika saya memerlukan perhitungan sewenang-wenang, jika saya perlu mengelompokkan data berdasarkan klien, melakukan analitik sesuai dengan parameter yang tidak dalam 1C - ya, ini terjadi - saya pergi ke " excel. Sederhananya, dalam tabel saya melakukan perhitungan, analisis non-standar, tetapi kemudian saya mensistematisasikan semuanya nanti dalam 1C.

Dan kemudian, untuk melihat file yang diunggah dari 1C, Anda masih memerlukan Excel, karena data dalam 1C disimpan dalam spreadsheet. Apakah Anda pikir itu lingkaran setan? Saya akan mengatakannya secara berbeda: "1C" dan "Excel" berjalan berdampingan seperti dua mitra, tetapi masing-masing memiliki tujuannya sendiri, mereka saling melengkapi dengan baik, tetapi tidak saling bertukar.

Jika Anda perlu mensistematisasikan urusan Anda, dengan mempertimbangkan sistem legislatif negara kita, dengan mempertimbangkan kekhususan dan arah bisnis, terutama dalam hal informasi dalam jumlah besar, maka Anda memerlukan 1C. Jika Anda memerlukan perhitungan arbitrer, menyusun strategi dari awal, visualisasi data analitik non-standar, maka Excel siap melayani Anda. Tetapi jauh lebih nyaman untuk bekerja dengan solusi ini secara bersamaan.


Apa hasilnya - "1C" atau "Excel"?

Pada awalnya, jika pertanyaannya adalah keuangan untuk otomatisasi, meskipun program dasar 1C tidak membutuhkan banyak uang, saya akan menggunakan Excel. Nilai tambah yang besar adalah bahwa data dari tabel "hijau" dapat dimuat ke 1C tanpa kehilangan. Tetapi saat Anda meningkatkan, saya akan menyarankan Anda untuk memperhatikan program otomatisasi proses bisnis. Ada banyak dari mereka, dan mungkin belum tentu "1C" ...

Transisi ke 1C dapat dilakukan ketika Anda memahami bahwa perlu untuk mengoptimalkan sumber daya Anda, termasuk mengotomatiskan masalah yang terkait dengan hubungan dengan pelanggan dan pemasok, dengan otoritas pengawas. Secara umum, untuk meningkatkan alur kerja Anda untuk meningkatkan efisiensi bisnis, ketika pemrosesan informasi akan memakan banyak waktu, dan file Excel tidak akan lagi mengatasi volume data yang dimasukkan.

Namun, tidak semua "1C" cocok untuk Anda, Anda perlu mempertimbangkan berbagai faktor: spesifikasi dan ruang lingkup bisnis, skala, kebutuhan tugas sehari-hari, rutinitas yang perlu diminimalkan. Semuanya adalah individu. Yang benar, seperti yang saya katakan, ada di antara "1C" dan "Excel" - itu adalah tambahan satu sama lain.

Tentang ini, mungkin, semuanya. Tetapi jika Anda memiliki pertanyaan, silakan hubungi kami dan kami akan mencoba membantu Anda. Proses bisnis yang sukses, rekan-rekan!

  • Saat melakukan pertukaran informasi antara pihak lawan (daftar harga, tindakan rekonsiliasi, dll.);
  • Untuk memfasilitasi pekerjaan operator dalam kasus di mana akuntansi utama disimpan dalam 1C, dan beberapa di antaranya dilakukan dalam tabel Excel;
  • Selama pengisian awal database.

Untuk melakukan operasi ini, Anda dapat menggunakan fungsionalitas standar yang tersedia dengan berlangganan dukungan teknologi informasi (ITS), dan pemrosesan yang ditulis sendiri yang diimplementasikan melalui berbagai opsi koneksi. Dalam artikel kami, kami akan mencoba menganalisis semua kemungkinan kasus semaksimal mungkin dan menjawab sebagian besar pertanyaan yang ada terkait memuat data dari Excel ke 1C.

Mekanisme universal

Pada disk ITS, serta di portal 1C, dengan masuk ke menu "Dukungan teknologi" -> "Laporan dan pemrosesan universal", di folder "Memuat data dari dokumen spreadsheet" ada pemrosesan yang sesuai.

Saat diluncurkan, formulir terbuka (Gbr. 1):

Seperti yang Anda lihat dari formulir, ini memungkinkan Anda untuk mentransfer informasi ke objek konfigurasi berikut:

  1. Direktori;
  2. Bagian tabular dari dokumen atau buku referensi;
  3. Daftar informasi.

Bergantung pada posisi sakelar, bidang pemilihan objek berubah.

Formulir tabel pemrosesan diisi saat Anda membuka file yang diunggah.

Pemrosesan jenis mendukung unggahan dari:

  • Dikembangkan oleh spesialis perusahaan 1C, file formatmxl;
  • Lisztxls disimpan dalam formatExcel 97-2003;
  • berkas tekstxt;
  • mejadbf.

File Excel dengan volume besar dapat memakan waktu lama untuk dimuat, jadi jika diasumsikan pemuatan data dapat berlangsung dalam beberapa tahap atau Anda tahu pasti bahwa Anda harus membuka file yang ada beberapa kali, lebih baik menyimpan informasi dari itu di mxl untuk menghemat saraf dan format waktu. Anda dapat melakukan ini langsung dari formulir pemrosesan.

Penting untuk dipahami bahwa jika pengelompokan baris, subjudul, dan catatan ada di file sumber, mereka harus dihapus secara manual.

Sekarang mari kita beralih ke tab "Pengaturan" (Gbr. 2):

Gbr.2

Cukup sering, lembar bentang Excel berisi tajuk dengan segala macam detail dan data (nama formulir tercetak, detail rekanan, tanggal dan nomor dokumen masuk, nama kolom, dan sebagainya), untuk mengecualikan pemrosesannya dengan program pada formulir, di atribut "Baris pertama dokumen spreadsheet", Anda harus menentukan baris pertama dengan informasi yang ditransfer

Setelah memilih objek metadata tempat informasi akan ditulis, bagian tabular pada tab "Pengaturan" akan secara otomatis diisi dengan nama atribut, deskripsi jenisnya, dan lainnya informasi penting. Pertimbangan kolom bagian tabular dari tab "Pengaturan" harus dikhususkan untuk bagian yang terpisah.

Kolom pengaturan

Bendera - dengan mencentang atau menghapus centang pada kotak di baris, ditentukan apakah atribut yang sesuai akan diisi.

Representasi atribut - sinonim (nama) dari atribut metadata ditulis di sini, seperti yang ditentukan dalam konfigurator.

Bidang pencarian - jika Anda mencentang kotak ini, pemrosesan akan mencari elemen berdasarkan atribut yang sesuai dan, jika berhasil, mengubah data yang ada, fungsi tambahan bidang ini - perlindungan terhadap munculnya duplikat.

Deskripsi tipe - menampilkan tipe data yang memiliki satu atau beberapa atribut metadata.

Mode unduh - menawarkan tiga opsi untuk dipilih (Gbr. 3):

Gbr.3

  • Cari - elemen yang sesuai akan dicari, jika tidak ada, yang baru dapat dibuat;
  • Set - nilai tertentu diatur dengan cara bawahan;
  • Hitung – dalam hal ini, hasil perhitungan ekspresi yang ditentukan dalam kolom "Kondisi hubungan/Ekspresi untuk nilai" akan ditetapkan di bidang elemen yang dibuat.

Dalam kasus terakhir, mengaktifkan bidang Ekspresi akan membuka formulir (Gbr.4).

Gbr.4

Nomor kolom - bidang yang digunakan untuk menunjukkan dari kolom mana dari spreadsheet Excel Anda perlu mengambil data untuk diisi.

Nilai default - cukup sering situasi muncul ketika file yang diunggah tidak berisi semua data yang diperlukan untuk merekam suatu elemen, dalam hal ini, informasi yang terkandung dalam bidang ini akan diisi untuk diisi.

Kondisi tautan / Ekspresi untuk nilai - kami telah menyentuh sebagian bidang ini ketika kami mempertimbangkan bidang terhitung, selain itu, Anda dapat menentukan kondisi yang sesuai dengan data sumber yang akan disinkronkan.

Di sini, pada prinsipnya, adalah semua informasi yang tersedia di tab "Pengaturan".

Agar tidak menghabiskan banyak waktu setiap kali memuat, meresepkan korespondensi dan ekspresi, pengembang telah menyediakan kemampuan untuk menyimpan opsi pengaturan ke file dengan ekstensi mxlz.

Anda dapat memeriksa kebenaran data yang ditransfer dengan mengklik tombol "Isi kontrol" (Gbr. 1). Setelah itu, Anda dapat memulai proses pengunduhan. Anda akan diberi tahu secara terpisah tentang keberhasilan penyelesaian prosedur atau situasi non-standar.

Untuk mengunggah data dari Excel ke basis informasi"Manajemen dan perdagangan" ada mekanisme lain. Ini kurang universal daripada metode di atas, namun tidak memerlukan langganan ITS dan termasuk dalam pengiriman standar.

Pemrosesan ini dapat ditemukan di tab "Pembelian", di menu "Layanan", disebut "Memuat harga pemasok dari file" (Gbr. 5)

Gbr.5

Formulir pemrosesan berisi:

  1. Bidang pemilihan tanggal yang akan menunjukkan pada jam berapa harga ini relevan;
  2. Bidang untuk memilih rekanan yang mengirim daftar harganya;
  3. Sebuah tombol yang memungkinkan Anda untuk memilih jenis harga yang akan ditetapkan;
  4. Bagian tabular yang dapat diisi dengan data yang diunggah.

Bentuk ini dapat dilihat pada Gbr.6

Gbr.6

Legenda di bagian atas formulir menjelaskan cara menggunakan tab pertama formulir.

Setelah memilih rekanan (bergantung pada apakah ia bertindak sebagai pemasok, agen komisi atau penjual), kolom tambahan untuk setiap jenis harga akan tersedia di tabel.

Saat bekerja melalui antarmuka web, beberapa browser mungkin memerlukan instalasi add-on browser (Gbr. 7). Kita perlu mengklik tombol "Mulai Instalasi" dan memulai kembali koneksi kita.

Gbr.7

Setelah itu, dengan menggunakan clipboard, kita akan dapat mentransfer informasi dari satu tabel ke tabel lainnya. Ketika kolom yang kami butuhkan ("Artikel", "Nama", "Harga") diisi, kami menekan tombol "Berikutnya" dan pergi ke halaman kedua (Gbr. 8)

Gbr.8

Program akan secara otomatis mencari kecocokan dalam database dan, jika tidak ada, akan menawarkan opsi untuk mengatasi kesalahan. Penampilan bagian tabular dapat dikontrol dengan sakelar. Selain itu, pengguna dapat secara mandiri membandingkan elemen file yang diunggah dengan yang ada di database.

  • Daftarkan semuanya;
  • Daftarkan hanya yang telah berubah dibandingkan dengan yang sudah ada di database.

Di bidang teks, Anda dapat memasukkan komentar yang akan direkam dalam dokumen (Gbr. 9):

Gbr.9

Setelah diproses:

  • Elemen terkait akan dibuat di direktori "Nomenklatur pemasok" (jika tidak ada);
  • Ini akan dicocokkan dengan elemen buku referensi "Nomenklatur";
  • Dokumen "Pengaturan harga barang" akan dibuat dan diposting, menunjukkan: pemasok, jenis harga, dan tanggal penetapan data.

Pemrosesan "Memuat barang dari file eksternal" bekerja dengan cara yang sama.

Opsi pemrosesan transfer DIY

Masalah utama dalam mengekstrak data dari file Excel adalah bahwa 1C tidak memiliki mekanisme yang jelas untuk membukanya. Ada beberapa pilihan koneksi Excel ke 1C:

  • Melalui Microsoft ADODB - metode yang cukup cepat, yang, sebagai suatu peraturan, berlaku untuk opsi penyimpanan database file dan klien-server;
  • Lintas penggunaan Microsoft Office - metode yang terkadang gagal saat bekerja dengan database SQL, sebagai aturan, ini bekerja lebih lambat daripada metode pertama, dan Office juga diperlukan;
  • Melalui Libre Office - tidak seperti metode sebelumnya, ini gratis, selain format xls dan xlsx, ia juga mendukung tabelnya sendiri, tetapi memerlukan penginstalan Paket Libre Office dan beberapa persiapan file yang diunggah (baris pertama tabel harus berisi nama kolom).

Mari kita lihat lebih dekat berbagai cara dan pilihan.

Melalui ADODB.Koneksi

Secara umum, ADO adalah singkatan dari ActiveX Data Object dan berfungsi untuk akses program ke berbagai database. Masalah terbesar saat membuat koneksi apa pun ke file pihak ketiga (termasuk Excel) adalah menyusun string koneksi dengan benar.

Ada tiga opsi untuk file Excel:

Opsi string koneksi:

  • Penyedia - driver yang digunakan ditentukan di sini;
  • Sumber Data - mendefinisikan nama file yang akan kita buka;
  • Extended Properties - di sini Anda dapat menentukan apakah baris header diperlukan untuk tabel (HDR = YA menunjukkan bahwa data akan dibaca dari baris pertama, HDR = NO - dari baris kedua), apakah file dibuka hanya-baca ( ReadOnly) dan beberapa opsi tambahan lainnya.

Setelah membuat string koneksi, kita dapat terhubung ke file yang diunduh (Gbr. 13)

Gambar 13

Sekarang kita bisa menggunakan permintaan sederhana(Gbr.14) mulai mengambil informasi dari file yang diunduh.

DI DALAM kasus ini parameter "Sheet" menentukan lembar mana dari buku kerja excel yang harus kita kerjakan.

Kumpulan catatan yang disimpan pada lembar dapat dibaca menggunakan objek Recordset. Dalam hal ini, catatan pertama lembar dapat diperoleh dengan parameter BOF (awal file), dan EOF terakhir (akhir file).

Melalui aplikasi Excel

Perbedaan utama dari metode sebelumnya adalah selain driver database, Excel harus diinstal di komputer tempat koneksi dibuat. Hanya dalam kasus ini kita dapat menginisialisasi aplikasi untuk membaca data dari tabel (Gambar 16).

Objek COM ini memiliki beberapa parameter anak, tetapi yang utama bagi kami, di bawah kondisi tugas saat ini, adalah parameter WorkBooks (Gbr. 17).

Setelah menginisialisasi buku, perlu untuk menentukan lembar dari mana data akan dibaca (Gbr. 18).

Setelah itu, Anda dapat mengulangi di dalam siklus baris dan kolom tabel file yang sedang dibuka.

Beberapa kata tentang kemungkinan kesalahan

Bagian terbesar dari kesalahan saat menghubungkan ke file terjadi karena fakta bahwa file tersebut sudah digunakan oleh aplikasi lain. Tidak masalah jika bilah tugas menunjukkan bahwa Excel sedang berjalan di komputer, tetapi jika Anda atau pengguna lain membukanya dari pemrosesan eksternal, secara visual ini hanya dapat ditentukan melalui "Task Manager", jadi jangan lupa untuk menutup koneksi sebelum akhir prosedur transfer:

Dalam hal bekerja melalui ADO (Gbr.19);

Gbr.19

  • Dalam hal bekerja dengan aplikasi (Gbr. 20).

Beras. dua puluh.

Koneksi dan prosedur untuk menyelesaikan pekerjaan dengan data paling baik diatur di dalam konstruksi Attempt-Exception-End Attempt, menyebabkan deskripsi kesalahan dalam situasi luar biasa. Meskipun ini terkadang memperlambat pekerjaan, ini sangat menyederhanakan penentuan penyebab kesalahan dan, pada akhirnya, cara untuk menghilangkannya.

Di 1C, ada 2 cara untuk bekerja dengan file MS Excel, melalui objek COM dan alat 1C bawaan menggunakan objek dokumen spreadsheet. Mari kita periksa kedua metode ini secara lebih rinci.

1. Bekerja melalui COM-objek.

Metode ini membutuhkan MS Excel untuk diinstal, dan jika Anda bekerja dengan file di server, maka MS Excel harus diinstal di server, jika di klien, maka MS Excel juga diperlukan di sisi klien.

Contoh (di akhir artikel dapat dilihat dalam bentuk teks):

Perlu dicatat bahwa semua objek, metode, dan properti yang disediakan oleh objek COM "Excel.Application" adalah objek, metode, dan properti VBA, bahasa pemrograman MS Office.

Catatan:

Terkadang Anda perlu bekerja dengan template yang sudah ada. Kemudian kita perlu menyimpan template ini di suatu tempat sehingga semua pengguna yang diperlukan memiliki akses ke sana. Namun, ada solusi yang lebih mudah, kami menyimpan template sebagai tata letak biner.

2. Bekerja melalui Dokumen Spreadsheet 1C.

Dokumen spreadsheet 1C mendukung format MS Excel untuk perekaman mulai dari platform 8, tetapi untuk pembukaan hanya mulai dari platform 8.3.6. Apalagi, saat dibuka, semua lembar dimuat ke dalam satu dokumen spreadsheet. Mulai dari versi 8.3.10, saat memuat, lembar yang berbeda dimuat sebagai area yang berbeda.

Contoh perekaman sangat sederhana dan tidak memerlukan banyak perhatian:

Namun, di sini kita punya masalah. Saat merekam dari 1C di buku kerja Excel, tampilan nama lembar dinonaktifkan secara default.

Masalah ini dapat diselesaikan dengan 2 cara, 1 - aktifkan tampilan lembar di buku itu sendiri di pengaturan (tidak semua pengguna akan setuju untuk melakukan ini), 2 - lakukan melalui objek COM (kita perlu menginstal MS Excel lagi) .

Setelah penambahan kecil ini, label lembar akan terlihat di file MS Excel.

Membaca MS Excel bukanlah tugas yang sederhana, karena metode membaca hanya tersedia di server atau klien tebal. Untuk melakukan ini, kita perlu mentransfer file MS Excel ke server.

&PadaKlien

BuatDocument() Prosedur

Pengecualian

Akhir Upaya;

Buku = Excel.WorkBooks.Add(); //Buat buku kerja MS Excel baru

Sheet = Buku.WorkSheets.Add(); //Tambahkan lembar

Sheet.Name = "Contoh dari 1C"; //Menetapkan nama lembar

Sheet.Cells (1,1).Value = "(!LANG:Ayo buat rumus";!}

Sheet.Sel(2,1).Nilai = 1;

Sheet.Sel(2,2).Nilai = 2;

Sheet.Sel(2,3).Rumus = "=A2+B2";

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

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

Buku.Tutup();

AkhirProsedur

&Di server

Fungsi GetLayoutServer()

Return FormAttributeToValue("Object").GetLayout("Unggah Template"); //Ini adalah bagaimana kita mendapatkan tata letak pemrosesan eksternal;

Fungsi Akhir

&PadaKlien

Prosedur Kerja()

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

Pengecualian

Show("Upaya yang gagal untuk menyambungkan komponen Excel. Excel mungkin tidak diinstal pada komputer ini!");

Akhir Upaya;

Tata Letak = GetLayoutServer();

Tata Letak.Tulis(NamaFile Sementara);

Apakah Anda memiliki pertanyaan, apakah Anda memerlukan bantuan konsultan?

Buku = Excel.WorkBooks.Open(TempFileName);

SheetTemplate = Buku.WorkSheets(1);

SheetTemplate.Cells (6,1).Nilai = "(!LANG:Tanggal:";!}

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

SheetTemplate.NumberFormat = "dd/mm/yy;@"; // Mari kita beri format tanggal, format ini diperoleh dengan merekam makro di MS Excel

SheetTemplate.Columns("B:B").EntireColumn.AutoFit; // Regangkan kolom agar pas dengan tanggalnya

Buku.SaveAs(FileName);

Buku.Tutup();

AkhirProsedur

&PadaKlien

AkhirProsedur

&PadaKlien

Prosedur WriteSpreadsheetDocument()

SpreadsheetDocument = SpreadsheetDocument Baru();

SpreadsheetDocument.Area("R1C1").Text = "Contoh entri di MS Excel dari 1C";

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

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

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

Excel.Terlihat = 0;

Excel.ActiveWindow.DisplayWorkbookTabs = 1;

Excel.ActiveWindow.TabRatio = 0,6;

Excel.ActiveWorkbook.Save();

Excel.Application.Quit()

AkhirProsedur

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

Alamat=PutToTempStorage(BinaryData,ThisForm.UniqueIdentifier);

SpreadsheetDocument = DownloadOnServer(Alamat);

SpreadsheetDocument.Show();

AkhirProsedur

&Di server

Fungsi LoadOnServer(Alamat)

TempFileName = GetTemporaryFileName("xlsx");

FileData = GetFromTempStorage(Alamat);

FileData.Tulis(NamaFile Sementara);

SpreadsheetDocument = SpreadsheetDocument Baru();

Kembalikan SpreadsheetDocument;

Pengantar.

Banyak orang tahu bahwa Excel jauh lebih tua dari 1C. Menurut pendapat saya, ini adalah produk yang sangat sukses, dan saya belum pernah mendengar keluhan tentangnya. Excel sederhana dan serbaguna. Ia mampu melakukan tidak hanya operasi aritmatika sederhana, tetapi juga perhitungan kompleks, grafik, dll. Saya tahu contoh ketika organisasi, sebelum beralih ke 1C, menyimpan bagian dari akuntansi di Excel. Banyak dan sekarang secara paralel menggunakan dua program. Pada artikel ini, kami akan mempertimbangkan cara untuk bertukar data antara 1C dan Excel.

Tabel 1C dan Excel.

Untuk kenyamanan, banyak pengguna menyimpan tabel 1C (formulir yang dapat dicetak) dalam format Excel (* .xls). Setelah itu, berbagai pengelompokan, pengurutan, perhitungan, dll dibuat dalam file yang dihasilkan. Ini disebabkan oleh fakta bahwa dalam tabel 1C tidak ada fungsionalitas sebesar itu seperti pada tabel Excel. Namun pada versi 1C 8.0 terdapat inovasi yang membuat bekerja dengan tabel menjadi lebih nyaman.

Situs web 1C (http://www.1c.ru/) memiliki program berguna yang memungkinkan Anda membuka tabel 1C di Excel dan menyimpan lembar Excel sebagai tabel 1C. Ini berguna jika tabel 1C tidak disimpan dalam format Excel, dan 1C tidak diinstal di komputer tempat Anda perlu membuka tabel ini. Ya, dan selalu ingat bahwa Anda perlu menyimpan tabel 1C dalam format Excel, tidak perlu.

Informasi lengkap tentang program ini dapat ditemukan di sini.
Anda dapat mengunduh program di sini (arsip zip 682 739 byte).

Komentar: Di Excel, pemisah desimal adalah ",". Oleh karena itu, sebelum menyimpan tabel 1C dalam format Excel, ganti pemisah lain di dalamnya (misalnya, ".") dengan ",". Jika tidak, Excel tidak akan dapat melakukan perhitungan dengan angka-angka ini, atau angka-angka tersebut tidak akan ditampilkan sebagai angka sama sekali. Misalnya, pada tabel 1C "15.2" akan ditampilkan di Excel sebagai "15 Februari".

Mendapatkan data dari Excel.

Akses dari 1C ke Excel dilakukan melalui OLE. Misalnya, kode
Percobaan
Pengecualian
Beritahu (Kesalahan Deskripsi() +
);
Kembali;
Akhir Upaya;
akan memungkinkan kita untuk mengakses melalui variabel "Excel" untuk menjalankan aplikasi Unggul. Dan kemudian Anda sudah dapat mengakses buku (file), lembar dan sel dengan data. Di bawah ini adalah contoh kode.

Membuka buku (file):
Buku = Excel. buku kerja. Buka(PathToFile);
PathToFile adalah jalur lengkap ke file buku kerja Excel.

Memilih lembar buku untuk dikerjakan:
atau
Lembar = Buku. Lembar Kerja(NamaLembar);
SheetNumber adalah nomor lembar dalam buku, SheetName adalah nama lembar dalam buku.

Mendapatkan nilai sel lembar:
Nilai = Lembar. Sel (LineNumber , ColumnNumber ). nilai;

Penting: jangan lupa untuk menambahkan kode Excel ke bidang untuk melakukan tindakan yang diperlukan. Berhenti(); , jika tidak, proses yang berjalan akan tetap tidak lengkap dan akan memakan memori dan prosesor komputer.

Keluaran data ke Excel.

Untuk mengeluarkan (mengunggah) data ke Excel, Anda harus membuka buku kerja yang sudah ada atau membuat yang baru dan memilih lembar kerja untuk keluaran data. Membuka buku yang sudah ada dijelaskan di atas, tetapi untuk membuat buku baru, Anda perlu menggunakan kode berikut:
Percobaan
Excel = CreateObject("Excel.Application" );
Pengecualian
Beritahu (Kesalahan Deskripsi() +
"Excel tidak diinstal di komputer ini!");
Kembali;
Akhir Upaya;
Buku = Excel. buku kerja. Menambahkan();

Karena saat membuat buku di Excel, lembar dibuat secara otomatis (Alat-> Opsi-> Umum-> Lembar di buku baru), Anda hanya perlu memilih lembar untuk digunakan:
Lembar = Buku. Lembar Kerja(Nomor Lembar);
atau tambahkan lembar baru ke buku, jika perlu:
Lembar = Buku. Lembar. Menambahkan();
Langkah selanjutnya adalah mengatur nilai sel:
Lembaran. Sel (LineNumber , ColumnNumber ). nilai = nilai;
RowNumber, ColumnNumber - nomor baris dan nomor kolom di persimpangan tempat sel berada.
Dan pada akhirnya, Anda perlu merekam buku yang dibuat:
Percobaan
Buku . SaveAs(PathToFile);
Pengecualian
Beri tahu (Deskripsi Kesalahan ()
+ "File tidak disimpan!");
Kembali;
Akhir Upaya;
PathToFile - path lengkap ke file buku kerja Excel (termasuk namanya).
Penting: ingat bahwa nama file tidak boleh mengandung \ / : * ? " >< |.

Metode yang umum digunakan untuk membaca/mengatur nilai di Excel.

Excel = CreateObject("Excel.Application" ); Mendapatkan akses ke aplikasi Excel.
Unggul. Terlihat = Visibilitas ; 0 - Excel tidak terlihat, 1 - terlihat.
Buku = Excel. buku kerja. Menambahkan(); Membuat buku kerja baru (file) Excel.
Buku . SaveAs(Nama File); Menyimpan buku kerja Excel.
Lembar = Buku. Lembar kerja. Menambahkan(); Menambahkan lembar baru ke buku.
Buku = Excel. buku kerja. Buka(Nama file); Membuka buku kerja (file) Excel yang sudah ada.
Lembar = Buku. Lembar Kerja(Nomor Lembar); Mengatur lembar sebagai lembar kerja dengan numberSheetNumber.
Lembaran. Nama = NamaLembar; Memberi nama lembar kerjaSheetName
Lembaran. Pengaturan halaman . Zoom = Skala; Menentukan opsi halaman Skala (dari 10 hingga 400).
Lembaran. Pengaturan halaman . Orientasi = Orientasi; Orientasi: 1 - potret, 2 - lanskap.
Lembaran. Pengaturan halaman . LeftMargin = Excel . CentimetersToPoints ( Sentimeter ); Mengatur batas kiri (dalam sentimeter).
Lembaran. Pengaturan halaman . Margin Atas = Excel . CentimetersToPoints ( Sentimeter ); Menentukan batas atas (dalam sentimeter).
Lembaran. Pengaturan halaman . Margin Kanan = Excel . CentimetersToPoints ( Sentimeter ); Menentukan batas kanan (dalam sentimeter).
Lembaran. Pengaturan halaman . BottomMargin = Excel . CentimetersToPoints ( Sentimeter ); Menetapkan batas bawah (dalam sentimeter).
Lembaran. Kolom (ColumnNumber) . Lebar Kolom = Lebar ; Tetapkan lebar kolom.
Lembaran. Sel (LineNumber , ColumnNumber ) . nilai = nilai; Memasukkan data ke dalam sel.
Lembaran. Sel (LineNumber , ColumnNumber ) . font. Nama = Nama Font ; Mengatur font dalam sel.
Lembaran. Sel (LineNumber , ColumnNumber ) . font. Ukuran = Ukuran Font; Mengatur ukuran font dalam sel.
Lembaran. Sel (LineNumber , ColumnNumber ) . font. Tebal = Tebal ; 1 - Huruf tebal, 0 - biasa.
Lembaran. Sel (LineNumber , ColumnNumber ) . font. Miring = Miring ; 1 - font miring, 0 - normal.
Lembaran. Sel (LineNumber , ColumnNumber ) . font. Garis bawah = Garis bawah; 2 - digarisbawahi, 1 - tidak.
Lembaran. Sel (LineNumber , ColumnNumber ) . NomorFormat = Format; Mengatur format data sel.
Lembaran. Sel (LineNumber , ColumnNumber ) . perbatasan. Gaya garis = Jenis Garis ; Tetapkan batas sel. 1 - padat tipis.

Metode ini sederhana. Esensinya adalah bahwa objek SpreadsheetDokumen memiliki metode:

  • membakar (< ИмяФайла>, < ТипФайлаТаблицы >) untuk mengunggah data ke file;
  • Membaca (< ИмяФайла>, < СпособЧтенияЗначений >) untuk memuat data dari sebuah file.

Perhatian!

Metode Write() tersedia di klien dan server. Metode Read() hanya tersedia di sisi server. Perlu diingat ini
ketika merencanakan interaksi klien-server.

Pertimbangkan contoh menyimpan dokumen spreadsheet ke file. Hal ini diperlukan untuk membuat dan mengisi objek TableDocument dengan cara apapun, dan bongkar muat file dilakukan hanya dengan satu baris:

TabDokumen . Tulis (FilePath, SpreadsheetDocumentFileType.XLSX));

Di Sini TabDokumen- lembar kerja yang dihasilkan, Jalur ke file- nama file yang akan diupload, SpreadsheetDocumentFileType.XLSX- format file yang dihasilkan. Format Excel berikut ini didukung:

  • XLS95 - format Excel 95;
  • XLS97 - format Excel 97;
  • XLSX adalah format Excel 2007.

TabDoc = SpreadsheetDocument Baru;
TabDokumen . Baca (PathToFile, WayToReadSpreadsheetDocumentValues.Value);

Di Sini Jalur ke file- Jalur ke file Excel yang diunduh. WayToReadValuesSpreadDocument.Value menentukan bagaimana menafsirkan data yang dibaca dari dokumen sumber. Pilihan yang tersedia:

  • Berarti;
  • Teks.

Tukarkan melalui OLE

Pertukaran melalui teknologi otomatisasi OLE mungkin merupakan cara paling umum untuk bekerja secara terprogram file excel. Ini memungkinkan Anda untuk menggunakan semua fungsionalitas yang disediakan oleh Excel, tetapi lebih lambat daripada metode lain. Pertukaran melalui OLE membutuhkan MS Excel untuk diinstal:

  • Di komputer pengguna akhir, jika pertukaran terjadi di sisi klien;
  • Di komputer server 1C:Enterprise, jika pertukaran terjadi di sisi server.

Contoh bongkar muat:

// Buat objek COM
Excel = New COMObject("Excel.Application");
// Nonaktifkan peringatan dan pertanyaan
Unggul . peringatan tampilan = salah;
// Buat buku baru
Buku = Excel. buku kerja. Menambahkan();
// Memposisikan pada lembar pertama
Lembaran = Buku. Lembar Kerja(1);

// Tulis nilai ke sel
Lembaran . Sel (Nomor Baris, Nomor Kolom). Nilai = Nilai Sel;

// Simpan file
Buku . SaveAs(NamaFile);


Unggul . Berhenti();
Excel = 0;

Contoh membaca:

// -- PILIHAN 1 --

// Buat objek COM
Excel = New COMObject("Excel.Application");
// Buka buku
Buku = Excel. buku kerja. Membuka( Jalur ke file );

Lembaran = Buku. Lembar Kerja(1);

// Tutup buku
Buku . Tutup (0);

// Tutup Excel dan bebaskan memori
Unggul . Berhenti();
Excel = 0 ;

// -- PILIHAN 2 --

// Buka buku
Buku = DapatkanCOMObject( Jalur ke file );
// Memposisikan pada lembar yang diinginkan
Lembaran = Buku. Lembar Kerja(1);

// Baca nilai sel, ini biasanya tempat loop bypass sel berada
Nilai Sel = Lembar. Sel (Nomor Baris, Nomor Kolom). nilai;

// Tutup buku
Buku . aplikasi. Qui T();

Untuk jalan pintas semua baris lembar Excel yang terisi, Anda dapat menggunakan trik berikut:

// -- PILIHAN 1 --
Jumlah Baris = Lembar. Sel(1 , 1 ). Sel Khusus(11 ). Baris;
Untuk RowNumber = 1 Dengan Jumlah Baris Loop
Nilai Sel = Lembar. Sel (Nomor Baris, Nomor Kolom). nilai;
Siklus Akhir;

// -- PILIHAN 2 --
NomorBaris = 0 ;
Sementara True Loop
LineNumber = LineNumber + 1 ;
Nilai Sel = Lembar. Sel (Nomor Baris, Nomor Kolom). nilai;
Jika TIDAK ValueFilled(CellValue) Kemudian
menggugurkan;
Berakhir jika;
Siklus Akhir;

Alih-alih secara berurutan melintasi semua garis lembar, Anda dapat membuang semua data ke dalam array dan bekerja dengannya. Pendekatan ini akan lebih cepat ketika membaca sejumlah besar data:

TotalColumns = Lembar. Sel(1 , 1 ). Sel Khusus(11 ). Kolom;
TotalBaris = Lembar. Sel(1 , 1 ). Sel Khusus(11 ). Baris;

Wilayah = Lembar. Range(Sheet. Sel(1 , 1 ), Daftar. Sel(TotalRows, TotalColumns));
Data = Luas. nilai. membongkar();

Tabel di bawah ini mencantumkan properti dan metode yang paling banyak diminta untuk bekerja dengan Excel melalui OLE:

Tindakan Kode Komentar
Bekerja dengan aplikasi
Mengatur Visibilitas Jendela Aplikasi Unggul . bisa dilihat= salah;
Mengatur mode tampilan peringatan (display/not display) Unggul . Peringatan Tampilan= salah;
Menutup aplikasi Unggul . Berhenti();
Bekerja dengan buku
Buat buku baru Buku = Excel. buku kerja. Menambahkan();
Membuka buku kerja yang ada Buku = Excel. buku kerja. Buka (Nama File);
Menyimpan buku Buku . SaveAs(Nama File);
penutupan buku Buku . Tutup (0);
Bekerja dengan selembar
Mengatur lembar saat ini Lembaran = Buku. Lembar Kerja(Nomor Lembar);
Pengaturan nama Lembaran . Nama = Nama;
Mengatur perlindungan Lembaran . Melindungi();
Penghapusan perlindungan Lembaran . Lepas Proteksi();
Mengatur orientasi halaman Lembaran . Pengaturan halaman. Orientasi = 2; 1 - potret, 2 - lanskap
Mengatur batas kiri Lembaran . Pengaturan halaman. Margin Kiri = Excel. SentimeterToPoints(Sentimeter);
Menetapkan batas atas Lembaran . Pengaturan halaman. Margin Atas = Excel. SentimeterToPoints(Sentimeter);
Mengatur batas kanan Lembaran . Pengaturan halaman. Margin Kanan = Excel. SentimeterToPoints(Sentimeter);
Mengatur batas bawah Lembaran . Pengaturan halaman. Margin Bawah = Excel. SentimeterToPoints(Sentimeter);
Bekerja dengan baris, kolom, sel
Mengatur lebar kolom Lembaran . Kolom(Nomor Kolom). Lebar Kolom = Lebar;
Menghapus garis Lembaran . Baris (Nomor Baris). Menghapus();
Menghapus kolom Lembaran . Kolom(Nomor Kolom). menghapus();
Menghapus sel Lembaran . Sel (Nomor Baris, Nomor Kolom). Menghapus();
Menetapkan nilai Lembaran . Sel (Nomor Baris, Nomor Kolom). Nilai = Nilai;
Menggabungkan sel Lembaran . Rentang (Sheet. Sel (RowNumber, ColumnNumber), Sheet. Sel (RowNumber1, ColumnNumber1)). Menggabungkan();
Menginstal font Lembaran . Sel (Nomor Baris, Nomor Kolom). jenis huruf. Nama = Nama Font;
Mengatur ukuran font Lembaran . Sel (Nomor Baris, Nomor Kolom). jenis huruf. Ukuran = Ukuran Font;
Pengaturan font tebal Lembaran . Sel (Nomor Baris, Nomor Kolom). jenis huruf. Mencolok = 1 ; 1 - tebal, 0 - normal
Pengaturan miring Lembaran . Sel (Nomor Baris, Nomor Kolom). jenis huruf. miring = 1 ; 1 - miring, 0 - normal
Mengatur font yang digarisbawahi Lembaran . Sel (Nomor Baris, Nomor Kolom). jenis huruf. Menggarisbawahi = 2 ; 2 - digarisbawahi, 1 - tidak

Untuk mengetahui properti mana yang perlu diubah atau metode mana yang harus dipanggil, Anda dapat menggunakan makro Unggul. Jika Anda merekam makro dengan tindakan yang diperlukan, maka Anda dapat melihat kode program di VBA dari makro yang direkam.

Menggunakan COMSafeArray

Saat membongkar data dalam jumlah besar dari 1C ke Excel, Anda dapat menggunakan objek untuk mempercepat COMSafeArray. Seperti yang didefinisikan oleh pembantu sintaks, COMSafeArray adalah pembungkus objek di atas array multidimensi SafeArray dari COM. Memungkinkan Anda membuat dan menggunakan SafeArray untuk bertukar data antara objek COM. Sederhananya, ini adalah array nilai yang dapat digunakan untuk pertukaran antar aplikasi menggunakan teknologi OLE.

// Buat COMSafeArray
ArrayCom = New COMSafeArray("VT_Variant", TotalColumns, TotalRows);
// Isi COMSafeArray
Untuk Str = 0 Total Baris - 1 Loop
Untuk Hitung = 0 Jumlah Kolom - 1 Siklus
ArrayCom . SetValue(Nomor, Str, Nilai);
Siklus Akhir;
Siklus Akhir;
// Menetapkan nilai area lembar Excel dari COMSafeArray
Lembaran . Rentang(Sheet. Sel(1 , 1 ), Daftar. Sel(TotalRows, TotalColumns)). Nilai = ArrayCom;

Pertukaran melalui ADO

File Excel, saat dipertukarkan melalui ADO, adalah database yang dapat diakses menggunakan kueri SQL. Instalasi MS Excel tidak diperlukan, tetapi driver ODBC diperlukan, yang melaluinya akses akan dilakukan. Driver ODBC yang digunakan ditentukan dengan menentukan string koneksi ke file. Biasanya driver yang dibutuhkan sudah terinstall di komputer.

Pertukaran melalui ADO terasa lebih cepat daripada pertukaran melalui OLE, tetapi saat membongkar, tidak ada cara untuk menggunakan fungsionalitas Excel untuk mendekorasi sel, menandai halaman, mengatur formula, dll.

Contoh bongkar muat:


Koneksi = COMObject Baru("ADODB.Koneksi");


Menggabungkan . KoneksiString="

|Sumber Data=" + NamaFile + ";
;
Menggabungkan . membuka(); // Buka koneksi

// Buat objek COM untuk perintah
Command = COMObject Baru("ADODB.Command");
Memerintah

// Tetapkan teks perintah untuk membuat tabel
Memerintah . teks perintah= "BUAT TABEL [Sheet1] (Column1 char (255), tanggal Column2, int Column3, Column4 float)";
Memerintah . menjalankan(); // Eksekusi perintah

// Menetapkan teks perintah untuk menambahkan baris tabel
Memerintah . teks perintah= "INSERT INTO [Sheet1] (Column1, Column2, Column3, Column4) nilai ('abvgdeo', '8/11/2017', '12345', '12345,6789')";
Perintah.Jalankan(); // Eksekusi perintah

// Menghapus perintah dan menutup koneksi
perintah = tidak ditentukan;
Menggabungkan . menutup();
Koneksi = Tidak ditentukan;

Untuk membuat lembar baru dan membentuk strukturnya, Anda dapat menggunakan objek ADOX.Katalog Dan ADOX.Tabel. Dalam hal ini, kode akan terlihat seperti:

// Buat objek COM untuk bekerja dengan buku
Buku = New COMObject("ADOX.Catalog");
Buku . Koneksi Aktif = Koneksi;

// Buat objek COM untuk bekerja dengan struktur data pada lembar
Tabel = New COMObject("ADOX.Table");
meja . Nama = "Lembar1" ;
meja . kolom. Append("Kolom1", 202 );
meja . kolom. Append("Kolom2", 7);
meja . kolom. Append("Kolom3", 5 );
meja . kolom. Append("Kolom4", 5 );

// Buat lembar di buku dengan struktur yang dijelaskan
Buku . tabel. tambahkan(tabel);
tabel = tidak ditentukan;
buku = tidak terdefinisi;

Dalam contoh di atas, dalam metode

meja . kolom. Menambahkan("Kolom1", 202);

parameter kedua menentukan jenis kolom. Parameter ini opsional, berikut adalah beberapa nilai tipe kolom:

  • 5-iklanDouble;
  • 6 - mata uang iklan;
  • 7 - tanggal iklan;
  • 11 - adBoolean;
  • 202 - adVarWchar;
  • 203-adLongVarWchar.

Contoh membaca:

// Buat objek COM untuk koneksi
Koneksi = COMObject Baru("ADODB.Koneksi");

// Setel string koneksi
Menggabungkan . KoneksiString="
|Penyedia=Microsoft.ACE.OLEDB.12.0;
|Sumber Data=" + NamaFile + ";
|Properti Diperpanjang=""Excel 12.0 XML;HDR=YA"";";
Menggabungkan . membuka(); // Buka koneksi

// Buat objek COM untuk menerima pilihan
Pilihan = New COMObject("ADODB.Recordset");
Teks Permintaan = "PILIH * DARI [Sheet1$]";

// Jalankan permintaan
Sampel . Buka (Teks Kueri, Koneksi);

// Lewati hasil seleksi
Sementara NOT Sampling. EOF() Putaran
ColumnValue1 = Pilihan. bidang. Barang("Kolom1"). nilai ; // Merujuk berdasarkan nama kolom
Nilai kolom2 = pilihan. bidang. Barang (0 ). nilai; // Ambil berdasarkan indeks kolom
Sampel . Pindah Berikutnya();
Siklus Akhir;

Sampel . menutup();
Sampel = tidak terdefinisi;
Menggabungkan . menutup();
Koneksi = tidak ditentukan;

Dalam string koneksi, parameter HDR menentukan bagaimana baris pertama pada lembar akan dirasakan. Opsi yang memungkinkan:

  • YA - baris pertama dianggap sebagai nama kolom. Nilai dapat diakses berdasarkan nama dan indeks kolom.
  • TIDAK - Baris pertama diambil sebagai data. Nilai hanya dapat diakses oleh indeks kolom.

Dalam contoh yang diberikan, hanya beberapa objek ADO yang dipertimbangkan. Model objek ADO terdiri dari objek berikut:

  • koneksi;
  • memerintah;
  • kumpulan rekaman;
  • catatan;
  • bidang;
  • Sungai kecil;
  • kesalahan;
  • parameter;
  • properti.

Unggah tanpa pemrograman

Untuk menyimpan data dari 1C ke Excel, tidak selalu disarankan untuk menggunakan pemrograman. Jika dalam mode Enterprise pengguna dapat menampilkan data yang diperlukan untuk mengunggah, maka dimungkinkan untuk menyimpannya di Excel tanpa pemrograman.

Untuk menyimpan dokumen spreadsheet (misalnya, hasil laporan), Anda dapat memanggil perintah Menyimpan atau Simpan sebagai… menu utama.

Di jendela yang terbuka, Anda harus memilih direktori, nama, dan format file yang disimpan.

Untuk menghemat data daftar dinamis(misalnya, daftar item) Anda harus:

  1. Keluarkan data ke spreadsheet menggunakan perintah Selengkapnya Tampilkan daftar...;
  2. Simpan dokumen spreadsheet dalam format yang diperlukan.