Otomatisasi pekerjaan dalam dokumen Microsoft Excel. Otomatisasi Excel: Mengotomatiskan operasi rutin di Excel tanpa makro. Data awal untuk otomatisasi

29.10.2019 Windows dan disk

Kami terus menerbitkan materi dari Buku Pegangan Operator Mesin Penggilingan yang diedit oleh V.F. Tanpa lidah. Kali ini kita akan menganalisa komponen utama mesin milling.

Meskipun jenis dan ukurannya beragam, mesin milling group mempunyai komponen-komponen yang sama, antara lain: alas mesin, alas, perosotan, spindel, speed and feed box, console (untuk mesin konsol).

tempat tidur Dirancang untuk mengencangkan semua komponen dan mekanisme mesin. Tergantung pada jenis mesinnya, tempat tidur bisa horizontal atau vertikal. Tempat tidur horizontal mesin berukuran besar, misalnya mesin penggilingan memanjang, dipasang di atas fondasi dengan seluruh permukaan pendukung. Bingkai vertikal dipasang di dasar mesin, yang dipasang atau diamankan ke fondasi. Untuk sebagian besar mesin, alasnya terbuat dari besi cor kelabu.

Spindel mesin penggilingan digunakan untuk mengirimkan torsi ke alat pemotong dari gearbox. Ketepatan putaran spindel, kekakuan dan ketahanan getarannya sangat menentukan keakuratan pemrosesan. Sekitar 50% dari semua pemeriksaan keakuratan yang dilakukan selama pembuatan, perakitan, dan perbaikan peralatan mesin dilakukan pada rakitan spindel.

kotak roda gigi merupakan unit penggerak utama gerak utama mesin dan dirancang untuk menyalurkan berbagai kecepatan putaran dari motor penggerak ke spindel mesin. Gearbox terletak di dalam rangka. Kotak dikontrol menggunakan mekanisme peralihan kecepatan spindel.

kotak roda gigi memastikan penerimaan umpan kerja dan pergerakan cepat meja, perosotan, konsol (untuk mesin konsol).

Meja mesin dipasang pada pemandu dan bergerak sepanjang mereka dalam arah memanjang. Pada mesin konsol, pemandu meja dipasang kereta luncur, yang merupakan elemen perantara antara tabel dan konsol. Bagian bawah perosotan dipasang pada pemandu melintang konsol dan dapat bergerak ke arah melintang bersama dengan meja.

Menghibur– elemen mesin milling kantilever berbentuk kotak dengan vertikal dan horizontal (melintang) panduan. Konsol terhubung ke bingkai dengan panduan vertikal dan dapat bergerak sepanjang itu. Perosotan bergerak sepanjang pemandu horizontal (melintang). Konsol dapat dipasang pada pemandu ketinggian rangka dengan klem khusus dan merupakan unit dasar yang menyatukan semua simpul lain dari rantai umpan dan mendistribusikan gerakan menjadi umpan memanjang, melintang, dan vertikal. Konsol ini ditopang oleh dudukan yang dilengkapi sekrup teleskopik untuk menaikkan dan menurunkannya.

Bab VI memberi deskripsi rinci mesin penggilingan. Pada artikel ini kita akan melihat komponen utama mesin milling kantilever dan aturan perawatannya. Tergantung pada lokasi spindel, mesin penggilingan kantilever dibagi menjadi horizontal dan vertikal.
Mesin penggilingan horizontal dicirikan oleh susunan spindel horizontal dan adanya tiga gerakan mesin yang saling tegak lurus - memanjang, melintang, dan vertikal. Mesin penggilingan horizontal dibagi menjadi dua jenis - sederhana dan universal. Pada mesin penggilingan horizontal universal, selain gerakan yang ditunjukkan, meja kerja juga dapat diputar mengelilingi sumbu vertikal dengan sudut hingga 45° di setiap arah. Untuk mengatur meja pada sudut yang diperlukan terhadap sumbu spindel, ada bagian yang berputar antara slide dan meja kerja, di pinggirannya ditandai pembagian derajat.

Pada Gambar. Gambar 16 menunjukkan tampilan umum mesin penggilingan horizontal 6M82GB. Komponen utama mesin adalah: alas 1, tempat tidur 2, bagasi 4, konsol 7, slide 6, meja 5, gearbox dengan spindel kerja 3, kotak umpan.
Alas mesin digunakan untuk mengencangkan seluruh komponen dan mekanisme mesin. Batangnya bergerak sepanjang pemandu atas rangka dan berfungsi untuk menopang ujung mandrel penggilingan dengan pemotong menggunakan anting. Itu bisa diperbaiki dengan jangkauan berbeda. Untuk meningkatkan kekakuan attachment bagasi, digunakan penyangga yang menghubungkan bagasi ke konsol
Konsolnya berbentuk kotak dengan pemandu vertikal dan horizontal. Itu terhubung ke bingkai dengan panduan vertikal dan bergerak di sepanjang mereka. Slide bergerak sepanjang panduan horizontal. Konsol dipasang pada pemandu dengan klem khusus dan merupakan unit dasar yang menggabungkan semua simpul lain dari rantai umpan dan mendistribusikan gerakan menjadi umpan memanjang, melintang, dan vertikal. Konsol ini ditopang oleh dudukan yang dilengkapi sekrup teleskopik untuk menaikkan dan menurunkannya.
Meja dipasang pada rel pemandu dan digerakkan sepanjang rel tersebut dalam arah memanjang. Benda kerja, penjepit, dan perangkat lain dipasang di atas meja. Untuk tujuan ini, permukaan meja kerja memiliki alur berbentuk T memanjang.
Slide adalah penghubung antara konsol dan meja mesin. Meja bergerak secara membujur di sepanjang pemandu atas perosotan, dan bagian bawah perosotan, bersama dengan meja, bergerak secara melintang di sepanjang pemandu atas konsol.
Spindel mesin milling digunakan untuk mengirimkan putaran ke alat pemotong dari gearbox. Ketepatan putaran spindel, kekakuan dan ketahanan getarannya sangat menentukan keakuratan pemrosesan.
Gearbox dirancang untuk mentransmisikan ke poros mesin nomor yang berbeda rpm Mesin mesin terletak di tempat tidur.
Kotak umpan digunakan untuk mengirimkan berbagai jumlah umpan ke meja dalam arah memanjang, melintang dan vertikal. Penggerak mekanisme umpan terletak di dalam konsol dan digerakkan oleh motor listrik terpisah. Tidak seperti penggerak gerak utama, penggerak umpan berkecepatan rendah.
Mesin penggilingan vertikal dicirikan oleh susunan spindel vertikal dan dirancang terutama untuk bekerja dengan pemotong muka, ujung, dan kunci.
Komponen utama mesin milling vertikal model 6M12P adalah: alas, alas, kepala spindel putar, konsol, meja, perosotan, kotak roda gigi dengan spindel kerja dan kotak umpan. Tujuan dari unit ini sama dengan mesin penggilingan horizontal. Mesin penggilingan vertikal tidak memiliki bagasi. Kepala yang berputar dipasang ke leher bingkai dan dapat diputar pada bidang vertikal dengan sudut 0 hingga 45° di kedua arah.

Gambar 17 menunjukkan kontrol mesin penggilingan vertikal 6M12P. Mesin menyediakan duplikasi kontrol. Kontrol terletak di panel depan mesin dan di sisi kiri. Menghidupkan putaran spindel dilakukan dari depan dengan tombol 15, dan di sisi kiri - dengan tombol 5, mematikan putaran spindel - dengan tombol 6. Pengaktifan pulsa (jangka pendek) spindel dilakukan dengan tombol 3 . Mengalihkan spindel ke jumlah putaran yang diperlukan dilakukan dengan pegangan 1. Jumlah putaran yang diperlukan diatur dengan memutar tombol 4 , dipandu oleh panah yang menunjukkan kecepatan spindel. Arah putaran spindel diubah dengan saklar 26. Spindel mesin dipasang pada kepala berputar, yang berputar pada bidang vertikal dengan sudut 45° ke segala arah. Spindel adalah poros penyangga ganda yang dipasang pada selongsong yang dapat ditarik. Selongsong direntangkan bersama dengan spindel menggunakan roda tangan 9, dan penjepitan dilakukan dengan menggunakan pegangan 10.
Penerangan mesin (lampu 8) dinyalakan dengan saklar 7, dan pompa pendingin dihidupkan dengan saklar 27. Pergerakan meja dikendalikan oleh pegangan yang arah putarannya bertepatan dengan arah pergerakan meja. . Pergantian umpan dilakukan dengan menggunakan jamur 20 dan tombol pengalih umpan. Pada saat yang sama, tombol jamur ditekan, dan jamur plastik ditarik kembali sepenuhnya. Kemudian putar tombol di dekat jamur dan atur jumlah pakan yang diperlukan. Dial dapat diputar ke segala arah. Pengumpanan memanjang meja dihidupkan menggunakan pegangan 12 atau 23 (duplikat).
Pengumpanan vertikal dan melintang dihidupkan menggunakan pegangan 21 atau 24 (duplikat). Untuk mengatur mesin agar melakukan siklus otomatis pergerakan meja, digunakan Cams 11. Pergerakan cepat meja dalam arah memanjang, melintang dan vertikal dilakukan dengan tombol 2 atau 16 (duplikat). Pergerakan meja secara manual dalam arah memanjang dilakukan dengan roda tangan 13 dan 25 (duplikat), dan dalam arah melintang - dengan roda tangan 17.
Pergerakan vertikal manual meja dilakukan dengan pegangan 18. Konsol pada dudukan penyangga diamankan dengan pegangan 19, slide pada konsol dengan pegangan 22. Saat Anda menekan tombol 14 (berhenti), motor terputus dari jaringan dan spindel direm. Mesin dimatikan dari listrik dengan menggunakan saklar utama 28.

Mesin penggilingan horizontal adalah peralatan yang paling umum di seluruh kelompok mesin penggilingan karena fungsionalitas, keserbagunaannya, dan jangkauan penggunaannya yang luas. Ruang lingkup penerapannya adalah produksi tunggal dan massal. Peralatan ini memungkinkan pemrosesan bagian yang terbuat dari logam besi dan non-besi, serta paduannya.

Prinsip pengoperasian mesin penggilingan horizontal

Seperti semua mesin penggilingan lainnya, prinsip pengoperasian model horizontal didasarkan pada putaran pemotong yang memproses suatu bagian (benda kerja), yang dipasang pada meja yang dapat digerakkan. Peralatan tersebut dapat berupa konsol atau non-konsol.

Dengan menggunakan mesin penggilingan horizontal, Anda dapat memproses bagian-bagian yang berukuran kecil dan berat menggunakan metode penggilingan. Mesin dilengkapi dengan meja yang bergerak melintang dan memanjang, spindel ditempatkan secara horizontal dan dirancang untuk bekerja dengan berbagai pemotong: silinder, ujung, berbentuk, dll. Memungkinkan Anda memproses permukaan pada bidang horizontal dan vertikal, termasuk sudut, alur, dan permukaan berbentuk. Perangkat pemisah khusus memungkinkan pemrosesan benda kerja yang memerlukan pembagian berkala dengan presisi tinggi.

Inspeksi visual sederhana pada mesin penggilingan horizontal memungkinkan Anda melihat bahwa semua komponen utamanya dipasang pada bingkai, di dalamnya terdapat kotak roda gigi dan rakitan spindel mekanis. Mandrel dengan pemotong ditopang oleh batang khusus.

Beberapa model mesin penggilingan horizontal berstatus universal, karena... Mereka tidak hanya dilengkapi dengan meja kerja luas yang nyaman, tetapi juga dengan kepala penggilingan yang berputar, yang menciptakan kemudahan pengoperasian maksimum dan menjamin akurasi pengeboran, pengeboran, dan countersinking yang tinggi. Peralatan tersebut dikendalikan menggunakan dashboard yang terletak di tempat yang nyaman bagi operator. Pada beberapa model, panel tersebut terletak di kedua sisi tempat tidur, yang menciptakan kenyamanan tambahan bagi pekerja.

Templat adalah hal yang nyaman dan berguna! Mereka memungkinkan Anda menghemat waktu saat menyusun dokumen "templat", yang sebagian besar digunakan dalam pekerjaan sehari-hari.

Mungkin bisnis Anda memerlukan dokumen atau tabel yang bagian utamanya tidak dapat diubah, namun beberapa fragmen dapat mengambil salah satu dari beberapa nilai yang telah diketahui sebelumnya. Contoh yang bagus- surat kuasa, kontrak penyediaan layanan, protokol pemeriksaan rontgen atau USG. Di era pra-komputer, bentuk-bentuk tipografi disiapkan, di mana perlu untuk “menggarisbawahi apa yang perlu, mencoret apa yang tidak perlu” dan menulis dalam jumlah yang sangat sedikit.

DI DALAM Dokumen kata Kotak kombo memainkan peran ini. Ide: klik mouse di tempat tertentu dalam dokumen, sebagai tanggapan, daftar dengan beberapa opsi akan terbuka, pilih yang Anda perlukan dengan mouse - itu muncul di tempat ini. Adalah logis untuk membuat elemen-elemen seperti itu dalam templat dokumen. Katakanlah Anda terlibat dalam diagnostik ultrasonografi dan memutuskan untuk menyimpan templat untuk kesimpulan studi dasar. Jumlahnya tidak banyak, dan masing-masing menggunakan frasa yang sama secara stereotip.

Alat untuk bekerja dengan ladang terkonsentrasi pada tab Pengembang. Secara default, itu disembunyikan. Untuk memunculkan tab, klik kanan pada pita dan menu konteks pilih tim Sesuaikan Pita. Sebuah kotak dialog akan terbuka Opsi Kata , di mana dalam grup Tab Utama Anda perlu mencentang kotak di sebelah elemen Pengembang. Klik OK dan tab bernama akan ditambahkan ke pita.

  1. Tempatkan kursor di tempat Anda ingin menyisipkan kontrol. Buka tab di pita Pengembang dan tekan tombolnya Elemen kontrol"daftar tarik-turun". Kontrol ini akan disisipkan di lokasi yang ditentukan.
  2. Di tab Pengembang Klik tombol Properti Kontrol. Sebuah kotak dialog akan terbuka.
  3. Di kotak dialog Properti Kontrol Konten klik tombolnya Menambahkan. Jendela anak akan terbuka Tambahkan opsi.
  4. Di kotak dialog Tambahkan opsi Di bidang Nama pendek, masukkan teks yang ingin Anda lihat sebagai pilihan pertama dalam daftar. Klik tombolnya OKE. Nilainya akan ditambahkan ke daftar.
  5. Tambahkan opsi lain ke daftar dengan cara yang sama. Untuk yang terakhir, masukkan satu spasi saja - saya akan menjelaskan alasannya nanti.
  6. Setelah menambahkan semua opsi ke daftar, klik di kotak dialog Properti Kontrol Konten tombol oke. Kotak dialog akan ditutup. Daftar tarik-turun sudah siap!

Bagaimana cara kerjanya? Saat Anda mengklik elemen tersebut di dokumen, sebuah daftar akan muncul. Anda memilih opsi yang sesuai darinya, dan nilai ini ditampilkan di tempat bidang. Memilih pilihan yang sudah jadi jauh lebih cepat daripada mengetik sesuatu atau bahkan menghapusnya. Jika Anda tiba-tiba menemukan gambar yang benar-benar kasuistik, dan tidak ada deskripsi yang sesuai di antara bagian yang kosong, pilih opsi “kosong” (spasi). Di sebelah kanan bidang, masukkan apa yang Anda inginkan - inilah mengapa Anda memerlukan opsi yang terdiri dari satu spasi.

Elemen kontrol Kotak kombo berfungsi hampir sama, tetapi dengan satu perbedaan - elemen daftar dapat diedit langsung di dalam bidang. Kontrol mana yang paling sesuai dengan tugas Anda bergantung pada situasinya.

Secara elektronik tabel excel Hal serupa juga disediakan. Hanya di sana lebih mudah untuk membuat sel dengan pilihan salah satu nilai yang mungkin menggunakan validasi data - alat yang diperlukan terletak di tab Data dalam grup Bekerja dengan data. Menggunakan kontrol di templat dokumen, kami membuat formulir sederhana. Namun, Anda bisa melangkah lebih jauh. Selain bidang contoh, dalam dokumen dan tabel Microsoft Office Kontrol lain juga disediakan: tombol, kotak centang, sakelar, bilah gulir. Kami terbiasa melihat mereka masuk kotak dialog, namun elemen tersebut dapat disematkan langsung ke dalam dokumen.

Arti bekerja dengan formulir adalah bahwa kotak centang dicentang, tombol ditekan, sesuatu dapat dimasukkan ke dalam kolom input, dan sebagai hasilnya, teks dokumen atau isi tabel terbentuk. Dalam “dokumen otomatis” seperti itu, makro (perintah makro) menangani tindakan pengguna.

Makro- pendek program sederhana ditulis dalam bahasa Visual Basic untuk Aplikasi(VBA). DI DALAM Aplikasi Microsoft Dukungan Office untuk bahasa ini sudah ada sejak awal, dan terdapat semua alat yang diperlukan. Misalnya, untuk memulai, Anda cukup merekam makro tanpa mempelajarinya struktur internal. Secara skematis:

  1. Di tab Pengembang dalam grup Kode klik tombolnya Rekam makro. Tindakan Anda dengan tabel atau dokumen mulai dilacak.
  2. Segera di kotak dialog yang terbuka, Anda diminta untuk memberi nama pada makro dan menetapkan pintasan keyboard yang selanjutnya akan meluncurkan makro ini untuk dieksekusi.
  3. Ikuti langkah-langkah yang ingin Anda sertakan dalam makro satu per satu. Aplikasi kantor mengingatnya sebagai rangkaian perintah, karena di VBA, setiap operasi dengan teks atau tabel berhubungan dengan kode tertentu.
  4. Setelah menyelesaikan semua operasi yang diperlukan, tekan tombol lagi Rekam makro.

Makro akan disimpan dalam template atau dokumen. Sekarang, jika Anda menekan pintasan keyboard yang Anda tentukan di langkah kedua, Excel atau Word akan menjalankan makro tersebut. Program ini akan mengulangi semua tindakan yang tercatat di dalamnya secara otomatis.

Jika perlu, isi perintah makro dapat dilihat, diedit, dan ditambah dalam editor Visual Basic. Itu adalah bagian wajib paket Microsoft Kantor. Biasanya, makro yang baru saja Anda rekam adalah rangkaian perintah linier. Saat mengedit, fungsi logika seperti "jika... maka", "dan", "atau", dll. sering dimasukkan ke dalam perintah makro. Dengan menjalankannya, perintah makro memeriksa dan membandingkan nilai sel yang berbeda , posisi kontrol, dan, bergantung pada ini, membangun perilaku lebih lanjut.

Makro apa pun bisa dengan mudah dikaitkan dengan kontrol formulir, seperti mengklik tombol atau memilih nilai tertentu dalam daftar. Misalnya, saat Anda membuat elemen Tombol, Anda segera diminta untuk menetapkan perintah makro ke elemen tersebut. Banyak orang terkadang perlu memasukkan “jumlah dalam kata” atau “angka dalam kata” ke dalam dokumen. Tidak ada fungsi seperti itu di antara alat Office standar, tetapi tugasnya mudah diselesaikan menggunakan makro. Ini adalah salah satu latihan favorit bagi mereka yang mulai mempelajari Visual Basic. Di Internet Anda akan menemukan ribuan contoh perintah makro yang sudah jadi, serta analisis terperinci cara menulis makro serupa sendiri.

Berkat formulir dan makro lembar kerja berhasil berubah menjadi "aplikasi mini" yang agak "pintar" dan elegan. Ini akan berfungsi di komputer mana pun yang menginstalnya program Unggul. Misalnya, ini adalah bagaimana daftar harga dibuat, yang diubah oleh klien menjadi pesanan dengan menandai item yang diperlukan. Atau misalnya formulir penghitungan jendela plastik. Data awal (daftar suku cadang dan harga) terdapat pada salah satu lembar Buku kerja Excel. Di lembar lain ada formulir. Kami memasukkan dimensi, memilih jumlah dan jenis ikat pinggang, produsen perlengkapan, dan menandai opsi yang diperlukan dengan kotak centang dan sakelar. Alhasil, lembar ketiga akan menampilkan spesifikasi lengkap pesanan, sudah beserta harganya. Seseorang yang telah menguasai bekerja dengan VBA hanya akan menghabiskan beberapa jam untuk membuat formulir seperti itu.

Alat VBA dirancang sejak awal untuk menjadi "pemrograman". pengguna biasa" Banyak contoh dan teknik menarik untuk bekerja dengan Word dan Excel diberikan di situs web ladyoffice.ru, www.excel2010.ru, excelexpert.ru, dll. Dan, tentu saja, pertama-tama ada baiknya untuk merujuk ke sistem bantuan Microsoft Office dan bagian dari situs web resmi Microsoft yang didedikasikan untuk bekerja dengan paket ini.

Mengetahui prinsip apa yang dapat dilakukan Word dan Excel, Anda dapat menantang seseorang untuk mengembangkan templat cerdas dengan mudah dan menyenangkan. Ada orang dimana-mana yang ingin melakukan pemrograman semacam ini. Siswa dan siapa pun yang menyukai pemrograman bersedia mengambil pengembangan “otomatisasi kecil”. Solusi yang bagus adalah dengan membuat teka-teki anak sekolah lho! Itu - topik yang menarik, dan, terlebih lagi, nyata, untuk abstrak dalam ilmu komputer, dan untuk Anda - alat yang berguna untuk bekerja.

Detail Kategori: Excel Diterbitkan: 28 Desember 2017

Otomatisasi penyusunan dokumentasi bawaan untuk konstruksi di Excel

Seringkali, ketika mereka berbicara tentang pekerjaan aplikasi kantor, ini berarti menggunakan PC sebagai mesin tik dan, sejujurnya, ini adalah pengganti mekanisme fisik yang agak mahal jika Anda tidak memanfaatkan kemampuan yang diberikan PC kepada kita. Mari kita bicarakan hal ini.

Perkenalan.

Menurut pendapat saya, PC muncul sebagai alat untuk memecahkan prinsip otomatisasi proses rutin, dan sangat bagus dalam hal ini. Selain itu, pembangunan program fungsional terdapat sejarah dalam menciptakan alat untuk menerjemahkan tugas-tugas darurat menjadi tindakan rutin, sebagai konsekuensi dari memperdalam pembagian kerja. Namun, ada area, termasuk. dan aliran dokumen, dimana saat ini PC digunakan secara tepat sebagai mesin tik, termasuk. dan karena tidak ada perkembangan serius yang dilakukan karena gaji masyarakat termasuk dalam biaya overhead dan akibatnya tidak besar, hal ini tidak bisa dikatakan tentang peningkatan volume aliran dokumen.

Nah, mari kita bicara tentang konstruksi, khususnya tentang penyusunan Dokumentasi Eksekutif (selanjutnya disebut ULN).

tentang dokumentasi Eksekutif

Lebih tepatnya tentang komponen tekstualnya. Singkatnya, ID adalah seperangkat tindakan, jurnal dan dokumen lain, gambar, diagram yang disusun untuk setiap tahap dan bahkan operasi (kelompok operasi) dalam konstruksi, untuk mengkonfirmasi/menolak pekerjaan yang dilakukan untuk proyek tersebut. Dokumen-dokumen tersebut sepenuhnya templat, daftarnya, tergantung pada jenis pekerjaan, diatur, dan dipelihara sesuai dengan jadwal sebenarnya pekerjaan yang dilakukan, meresmikan kebenaran/penyimpangan pekerjaan terhadap proyek yang disetujui oleh komisi.

Sebagian besar pekerjaan ditutup dalam bentuk Sertifikat Inspeksi Pekerjaan Tersembunyi (disetujui berdasarkan pesanan Layanan federal pada lingkungan, teknologi dan pengawasan nuklir tanggal 26 Desember 2006 N 1128 (Sebagaimana telah diubah, mulai berlaku pada tanggal 6 Maret 2016 atas perintah Rostechnadzor tanggal 26 Oktober 2015 No. 42. Selanjutnya disebut AOSR).

Data awal untuk otomatisasi.

Oleh karena itu, kami akan mengambil formulir AOSR sebagai dasar. Jadi, kami memiliki templat dokumen yang memasukkan informasi berikut:

nomor undang-undang postfix;
- nama proyek pembangunan modal;
- data hukum tentang peserta konstruksi (Pengembang atau Pelanggan; Orang yang melaksanakan konstruksi; Orang yang menyiapkan dokumentasi proyek;
Orang yang melaksanakan konstruksi yang melakukan pekerjaan yang harus diperiksa; orang lain.)
- daftar orang-orang dengan nama organisasi, posisi dan perintah yang menegaskan kekuasaan mereka;
- nama pekerjaan yang dilakukan;
- tenggat waktu penyelesaian pekerjaan;
- daftar pekerjaan yang termasuk dalam pekerjaan yang dilakukan;
- tautan ke dokumentasi teknis dan bagian proyek/dokumentasi teknis;
- tautan ke diagram eksekutif, laporan pengujian (jika diperlukan);
- daftar bahan yang digunakan dengan tautan ke dokumen yang mengonfirmasi kepatuhannya (paspor, sertifikat, dll.)

Pemikiran tentang metode mendasar untuk memecahkan masalah

Jadi, sebagai perkiraan pertama, Anda cukup membuatnya tabel visual, di mana dengan menetapkan bidang terkait dari jenis yang sama untuk setiap tindakan, kita akan mendapatkan gambaran visual dari skema untuk melakukan pekerjaan di fasilitas tersebut. Dan ini bukanlah hal baru. Jadi, kita perlu menghubungkan form dengan sel di tabel data dan ada 2 pilihan:

1. Penggabungan dengan berkas kata
2. Mengisi template berbasis Excel menggunakan makro.

Masing-masing metode ini mempunyai pro dan kontra, tetapi... merger membuat penggantian secara real time, lalu saya memutuskan untuk memilih item kedua, yang tidak disediakan oleh merger secara real time dan setiap kali perlu mengeluarkan tindakan, jika ada koreksi data, lagi. Hal ini disebabkan oleh kenyataan bahwa saya sering membutuhkan riwayat tindakan saya.

Nah, sekarang kita dihadapkan pada 2 tugas:

1. Mengisi template berdasarkan data tabel
2. Kolom mana yang harus diisi satu kali, kolom mana yang akan berubah dari waktu ke waktu, dan kolom mana yang akan berbeda di setiap babak.

Memecahkan masalah No. 2, kami akan keluarkan lembar terpisah data yang akan disatukan dalam objek/bagian proyek konstruksi adalah:

Bocoran

Pada lembar saat ini kami hanya akan mengisi satu kali, dan untuk tindakan selanjutnya kami hanya akan memasang tautan ke nilai-nilai berikut:

Bocoran

Dan bidang yang akan berubah di setiap babak:

Bocoran

Sekarang soal kemudahannya, jika Anda menuliskan nama penanggung jawab, organisasinya, urutan pengangkatan beserta tanggalnya, kemudian dengan menggunakan alat “cek data” Anda dapat memasukkan nama mereka di spoiler, dan menggunakan rumus untuk menarik menaikkan tanda kebesaran mereka.

IFERROR(TIDAK LANGSUNG(CONCATENATE( ""Data untuk proyek"!";ALAMAT((PERTANDINGAN(E30 ; "Data untuk proyek"!$G$15:$G$34;0 ))+14 ;6 )));"-" )

Itu. pada lembar “Data Proyek” di kisaran $G$15:$G$34, di kolom ke-6 kita mencari nilai di sel E30, dan segera setelah kita menemukannya menggunakan metode sederhana, kita mengubahnya menjadi alamat yang akan diubah menjadi tautan menggunakan rumus.

Soal baru sudah bertumpu pada panjang baris, jika menggunakan font Times New Roman No. 10, maka panjang teks yang akan dicetak tidak melebihi 105 karakter. Itu. kita menghadapi kebutuhan untuk menciptakan landasan bagi transfer. Jadi kode fungsi di VBA:

Fungsi PatrOfString(StringOfTable As String, Nnumber As Byte) As String Redupkan ArrayBlocks(1 To 10) As String Dim i As Integer " Dim j As Integer " Dim k As Integer " Dim p As Integer " For i = 1 To 10 Let ArrayBlocks (i) = " " Berikutnya i Misalkan k = 1 Misalkan p = Len (StringOfTable) Misalkan p1 = Len (StringOfTable) Untuk i = 1 Ke Pembulatan (Len (StringOfTable) / 105 ) + 1 Langkah 1 Jika p > 0 Dan p< 105 Then If k <= p1 Then Let МассивБлоков(i) = Mid $(StringOfTable, k, p) Else If Mid (StringOfTable, k, 1 ) = " " Then If k <= p1 Then Let МассивБлоков(i) = Mid $(StringOfTable, k, 105 ) Let p = p - 105 k = k + 105 Else j = 105 * i If j - k >= 105 Maka j = k + 105 Selesai Jika Do j = j - 1 Loop Sementara Pertengahan $(StringOfTable, j, 1 )<>" " Misalkan ArrayBlocks(i) = Pertengahan $(StringOfTable, k, j - k + 1 ) Misalkan p = p - (j - k + 1 ) Misalkan k = j + 1 Berakhir Jika Berakhir Jika Berikutnya i Jika Nangka - 1 > 0 Lalu Jika BlockArray(Nnumber) = BlockArray(Nnumber - 1 ) Maka BlockArray(Nnumber) = " " Berakhir Jika PatrOfString = BlockArray(Nnumber)

Itu. Kita ambil teksnya dulu, lalu potong 105 karakternya, cari karakter spasi pertama di akhir, kalau ketemu kita taruh teks di baris pertama array, panjang dari karakter pertama sampai jumlah spasi ditemukan. Kemudian kita melanjutkan operasi sampai teks habis atau array keluaran menjadi penuh. Pada tahap ini dibatasi hingga 10 baris memori. Kemudian kita tampilkan isi baris yang diinginkan dari 1-10 menggunakan link. Salah satu kelemahan dari solusi ini adalah memori tersumbat, dan perhitungan ulang dilakukan untuk setiap permintaan baru. Tapi kruknya berfungsi.

Sekarang outputnya ada dalam template AOSR standar. Ada lagi 2 pilihan, baik secara manual menetapkan perbandingan ke kolom (/ baris dalam kasus data yang terletak secara horizontal untuk setiap tindakan), maka ini akan memakan waktu dan sumber daya yang intensif untuk menyesuaikan masing-masing tindakan. templat baru atau perubahan pada tabel data. Itu sebabnya kami melakukan optimasi. Data untuk setiap tindakan akan disusun secara vertikal, dan perbandingan kombinasi kontrol karakter (dalam bahasa Latin, karena tindakan itu sendiri seluruhnya dalam bahasa Sirilik) akan berupa baris dengan informasi dalam tindakan ini, sehingga dalam loop bersarang ganda, mencari karakter kontrol dalam teks, kami akan membandingkan nilai yang diinginkan dari kolom.

Lakukan wb.Lembar Kerja( "Contoh tindakan pengendalian masuk").Copy after:=Worksheets(Worksheets.Count) Set newSheet = wb.Worksheets(Worksheets.Count) Untuk x = 1 Sampai 15 Langkah 1 "Melihat kolom pada lembar "Contoh tindakan pengendalian yang masuk" Untuk y = 1 Sampai 71 Langkah 1 " Kami menelusuri baris-baris di lembar "Contoh tindakan kontrol yang masuk" Jika Sheets(newSheet.Name).Cells(y, 20 ) = 1 Maka Misalkan k = CStr (Sheets(newSheet.Name).Cells(y, x)) “Kami hanya mencari jika ada sesuatu di dalam sel Jika k<>"" Maka Untuk i = 1 Ke Jumlah DataArray Langkah 1 Misalkan k = Ganti (k, arrDataLinks(i), Worksheets().Cells(i, ColumnNumber)) Berikutnya i newSheet.Cells(y, x) = k End If Berakhir Jika Berikutnya y Berikutnya x " Jika Anda ingin menambahkan data baru untuk isi otomatis, lanjutkan daftar ini. " Sel mempunyai koordinat dengan format Sel(3, 2), dimana 3 adalah contoh nomor baris, 2 adalah contoh nomor kolom " Untuk mengenali nomor kolom dengan mudah, Anda dapat mengaktifkan gaya tautan R1C1 " (File -> Opsi -> Rumus -> centang kotak "R1C1 Link Style") " atau tentukan koordinat dalam format Cells(1, "A"), dimana 1 adalah contoh nomor baris, "A" adalah contoh huruf kolom Rem -= Tentukan nama file dan jalur saat ini ke folder tempat makro diluncurkan =- Biarkan Nama File = Nama File + CStr (Lembar Kerja( "DB untuk kontrol masuk (2)").Cells("1" , ColumnNumber)) + "-" Misalkan Nama File = Nama File + CStr (Lembar Kerja( "DB untuk kontrol masuk (2)").Cells("2" , ColumnNumber)) + ".xlsx" NewPath = Ganti (ThisWorkbook.FullName, ThisWorkbook.Name, FileName) Application.DisplayAlerts = False " matikan peringatan Spreadsheet(lembar baru.Nama).Salinan " Salin lembar saat ini ke buku baru ActiveWorkbook.SaveAs Nama File:=NewPath, _ FileFormat:=51 ActiveWindow.Close Sheets(newSheet.Name).Hapus "Menghapus lembar yang dibuat Application.DisplayAlerts = Benar "Aktifkan kembali peringatan Misalkan ColumnNumber = ColumnNumber + 1 Loop Sementara ColumnNumber<= КонечныйНомерСтолбца End Sub

Nah, poin terakhir pada tahap ini adalah kita dibatasi oleh kinerja sistem dan dengan jumlah tindakan yang banyak, keluarannya akan memakan waktu berjam-jam. Untuk mempercepat proses, saya menggunakan opsi berikut: Saya menyalin isi lembar data ke lembar baru menggunakan makro, mendapat nomor (2) di namanya, lalu makro lain diluncurkan, yang mempercepat Excel, tetapi menonaktifkan sejumlah fungsi:

"Percepat Excel dengan menonaktifkan segala sesuatu yang memperlambat Anda" Sub Publik AccelerateExcel() "Kami tidak lagi menyegarkan halaman setelah setiap tindakan Aplikasi.Pembaruan Layar = Salah “Kami mengalihkan perhitungan ke mode manual Aplikasi.Perhitungan = xlCalculationManual "Nonaktifkan acara Aplikasi.EnableEvents = Salah "Jangan tampilkan batas sel Jika Workbooks.Count Kemudian ActiveWorkbook.ActiveSheet.DisplayPageBreaks = False End If "Nonaktifkan bilah status Aplikasi.DisplayStatusBar = Salah "Nonaktifkan pesan Excel Application.DisplayAlerts = Sub Akhir yang Salah

Dan setelah menampilkan semua data dari formulir, saya menjalankan makro serupa di mana saya menetapkan nilai true ke variabel yang sama dan menghapus lembar duplikat agar tidak mengganggu.

(berdasarkan materi dari https://habrahabr.ru/post/344956/)