Properti printer tidak diwariskan oleh benda-benda yang menggunakan default printer

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 290293 - Melihat produk di mana artikel ini berlaku.
Lanjutan: Memerlukan ahli coding, interoperabilitas, dan multiuser keterampilan.

Ini Artikel berlaku untuk Microsoft Access database (.mdb) atau Microsoft Office Database Access 2007 (.accdb). Artikel ini juga berlaku untuk proyek Microsoft Access (.adp).
Perbesar semua | Perkecil semua

Pada Halaman ini

GEJALA

Setelah pemrograman mengubah sifat Application.printer objek, forms and reports yang menggunakan default printer tidak secara otomatis mewarisi pengaturan ini.

PENYEBAB

Disimpan forms and reports menyimpan informasi printer sebagai bagian definisi mereka. Ketika Anda melihat atau mencetak disimpan forms and reports, ini objek menggunakan printer informasi yang disimpan dalam mereka bukan mewarisi pengaturan dari Application.printer objek.

PEMECAHAN MASALAH

Ada dua cara yang mungkin untuk memaksa laporan Gunakan pengaturan printer saat ini.

Microsoft memberi contoh pemprograman hanya untuk ilustrasi, tanpa garansi baik tersurat maupun tersirat. Ini termasuk, namun tidak terbatas pada, jaminan tersirat mengenai keadaan yang dapat diperjualbelikan atau kesesuaian untuk tujuan tertentu. Artikel ini mengasumsikan bahwa Anda sudah familiar dengan bahasa pemrogaman yang ditunjukkan dan dengan alat-alat yang digunakan untuk membuat dan memperbaiki prosedur. Teknisi Microsoft dapat membantu menjelaskan fungsionalitas prosedur tertentu, tetapi mereka tidak akan mengubah contoh tersebut untuk menyediakan fungsionalitas tambahan atau membuat prosedur untuk memenuhi persyaratan spesifik Anda.

Mengatur properti Printer untuk Application.Printer

Setelah Anda mengubah properti untuk Application.printer objek, mengatur Printer properti dari bentuk atau laporan Application.printer objek. Hal ini akan memaksa formulir atau laporan untuk menghancurkan saat ini DEVMODE struktur dan untuk mewarisi yang baru dari Application.printer objek.

Perhatikan bahwa pendekatan ini baik untuk sementara mengubah properti printer objek. Pengaturan printer akan tidak akan disimpan dengan objek kecuali Anda secara eksplisit menyimpan objek sesudahnya. Hal ini juga menyebabkan objek harus ditetapkan Printer tertentu selama waktu yang terbuka.

Untuk mengatur objek Printer properti untuk Application.printer objek, ikuti langkah berikut:
  1. Buka database contoh Northwind.mdb.
  2. Tutup bentuk utama Switchboard ketika itu muncul.
  3. Tekan ALT + F11 untuk membuka Editor Visual Basic.
  4. Pada Masukkan menu, klik Modul.
  5. Tambahkan berikut Visual Basic untuk aplikasi kode untuk modul baru:
    Sub ChangePrinterSettingsForReport()
       Dim rpt As Access.Report
       Dim prtr As Access.Printer
       
       Set Application.Printer = Nothing
       Set prtr = Application.Printer
       
       'Set the default printer's orientation to landscape
       prtr.Orientation = acPRORLandscape
    
       'Set the default printer's paper size to legal
       prtr.PaperSize = acPRPSLegal
    
       'Print Preview the Alphabetical List of Products Report
       DoCmd.OpenReport "Alphabetical List of Products", acPreview
       Set rpt = Reports("Alphabetical List of Products")
    
       'Set the Printer property of the report to the
       'Application.Printer object
       Set rpt.Printer = prtr
    
       'Uncomment the following line if you wish to save the object
       'with the current settings
       'DoCmd.Save acReport, rpt.Name
    
    End Sub
    					
  6. Klik dalam prosedur contoh di atas, dan kemudian di Menjalankan menu, klik Menjalankan Sub/UserForm.
  7. Pada Berkas menu, klik Menutup dan mengembalikan ke Microsoft Akses.
  8. Dalam Microsoft Office Access 2003 atau Microsoft Access 2002, klik Penataan Halaman pada The Berkas menu, lalu klik Halaman tab.

    Dalam Microsoft Office Access 2007, klik Microsoft Office tombol, arahkan keMencetak, lalu klik Print Preview. PadaPrint Preview tab, klik Penataan Halaman dalamTata letak halaman kelompok, dan kemudian klik Halamantab.

    Perhatikan bahwa laporan Ukuran kertas diatur ke Hukum, dan Orientasi diatur ke Lanskap.
  9. Tutup laporan.
  10. Di jendela Database, print preview daftar alfabetis Produk laporan lagi. Catatan bahwa pengaturan printer tidak secara otomatis disimpan dengan laporan.

Menetapkan pengaturan Printer objek langsung

Solusi lain adalah untuk pemrograman mengatur printer pengaturan objek itu sendiri, bukan menetapkan mereka untuk Application.printer properti. Pengaturan properti individu objek Printer properti ini mirip dengan pengguna secara manual mengubah printer pengaturan dalam Penataan Halaman kotak dialog. Ketika Anda secara pemrograman mengatur objek printer pengaturan secara langsung, pengaturan disimpan dengan objek secara otomatis.

Untuk menetapkan pengaturan printer objek langsung, ikuti langkah-langkah berikut:
  1. Buka database contoh Northwind.mdb.
  2. Tutup bentuk utama Switchboard ketika itu muncul.
  3. Tekan ALT + F11 untuk membuka Editor Visual Basic.
  4. Pada Masukkan menu, klik Modul.
  5. Tambahkan berikut Visual Basic untuk aplikasi kode untuk modul baru:
    Sub ChangePrinterSettingsForReport()
       Dim rpt As Access.Report
      
       DoCmd.OpenReport "Alphabetical List of Products", acPreview
       Set rpt = Reports("Alphabetical List of Products")
          
       'Set the default printer's orientation to landscape
       rpt.Printer.Orientation = acPRORLandscape
    
       'Set the default printer's paper size to legal
       rpt.Printer.PaperSize = acPRPSLegal
    End Sub
    					
  6. Klik dalam prosedur contoh di atas, dan kemudian di Menjalankan menu, klik Menjalankan Sub/UserForm.
  7. Pada Berkas menu, klik Menutup dan mengembalikan ke Microsoft Akses.
  8. Pada Berkas menu, klik Penataan Halaman, lalu klik Halaman tab.

    Dalam Microsoft Office Access 2007, klik Microsoft Office tombol, arahkan keMencetak, lalu klik Print Preview. PadaPrint Preview tab, klik Penataan Halaman dalamTata letak halaman kelompok, dan kemudian klik Halamantab.

    Perhatikan bahwa laporan Ukuran kertas diatur ke Hukum, dan Orientasi diatur ke Lanskap.
  9. Tutup laporan.
  10. Di jendela Database, print preview daftar alfabetis Produk laporan lagi. Perhatikan bahwa pengaturan printer yang secara otomatis disimpan dengan laporan.

STATUS

Ini adalah aktivitas.

INFORMASI LEBIH LANJUT

Forms and reports menyimpan struktur yang bernama DEVMODE sebagai bagian dari definisi mereka. The DEVMODE struktur adalah struktur Microsoft Windows yang mendefinisikan printer informasi untuk objek tertentu. Sebagai contoh, barang-barang seperti ukuran kertas, kertas bin, dan orientasi disimpan sebagai bagian dari struktur ini. Ketika Anda buat bentuk baru atau laporan objek objek, formulir atau laporan secara otomatis mewarisi DEVMODE struktur dari Application.printer objek. Ketika Anda menyimpan formulir atau laporan, DEVMODE struktur yang diwarisi secara otomatis akan disimpan dengan itu.

Secara default, properti printer untuk Application.printer objek akan sama sebagai printer default dalam Microsoft Windows. Namun, mungkin untuk pemrograman mengubah properti ini jadi Microsoft Access menggunakan set berbeda properti untuk default printer. Tabel, permintaan, pandangan, dan disimpan prosedur tidak menyimpan printer informasi sebagai bagian dari definisi mereka. Oleh karena itu ketika Anda mencetak tabel, pertanyaan, pandangan, atau disimpan prosedur, mereka akan selalu menggunakan pengaturan saat ini didefinisikan dalam Application.printer objek.

Langkah-Langkah untuk Mereproduksi Perilaku

  1. Dalam Akses 2003 atau di akses 2002, terbuka database contoh Northwind.mdb.
  2. Tutup bentuk utama Switchboard ketika itu muncul.
  3. Pada Lihat menu, titik Database objek, lalu klik Laporan.
  4. Klik Daftar produk laporan di jendela Database, dan kemudian pada Berkas Klik menu Penataan Halaman.
  5. Klik Halaman tab, dan memverifikasi bahwa Default Printer pilihan yang dipilih di bawah Printer bagian dari kotak dialog.
  6. Klik Oke untuk menutup Penataan Halaman kotak dialog.
  7. Pada Masukkan menu, klik Modul.
  8. Tambahkan berikut Visual Basic untuk aplikasi kode untuk modul:
    Sub ChangePrinterSettings()
       'Set the default printer's orientation to landscape
       Application.Printer.Orientation = acPRORLandscape
    
       'Set the default printer's paper size to legal
       Application.Printer.PaperSize = acPRPSLegal
    End Sub
    					
  9. Klik dalam prosedur contoh di atas, dan kemudian di Menjalankan menu, klik Menjalankan Sub/UserForm.
  10. Pada Berkas menu, klik Menutup dan mengembalikan ke Microsoft Akses.
  11. Pada Lihat menu, titik Database objek, lalu klik Permintaan.
  12. Klik Daftar produk permintaan, dan kemudian pada Berkas menu, klik Print Preview.
  13. Pada Berkas menu, klik Penataan Halaman.
  14. Klik Halaman tab. dicatat bahwa Orientasi opsi disetel ke Lanskap dan Ukuran kertas opsi disetel ke Hukum seperti yang diharapkan.
  15. Klik Batalkan untuk menutup Penataan Halaman dialog kotak, dan kemudian tutup query.
  16. Pada Lihat menu, titik Database objek, lalu klik Laporan.
  17. Di jendela Database, klik Daftar produk laporan, dan kemudian klik Pratinjau.
  18. Pada Berkas menu, klik Penataan Halaman.
  19. Klik Halaman tab. dicatat bahwa Orientasi opsi disetel ke Potret dan Ukuran kertas opsi disetel ke Surat, yang berbeda dari pengaturan yang dibuat untuk Application.printer objek.
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Properti

ID Artikel: 290293 - Kajian Terakhir: 23 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Office Access 2007
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
Kata kunci: 
kbappnote kbprogramming kbvba kbactivation kbprb kbprint kbmt KB290293 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:290293

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com