Petua: Bahasa lain diterjemahkan Google. Anda boleh melawat English versi pautan ini.
Log masuk
x
or
x
x
Daftar Sekarang
x

or

Bagaimana untuk mencetak helaian khusus berdasarkan nilai sel dalam Excel?

Pernahkah anda cuba mencetak beberapa helaian khusus berdasarkan nilai sel? Dalam artikel ini, saya akan membincangkan beberapa contoh mengenai isu ini, jika anda berminat dalam masalah ini, sila teruskan.

Lembaran cetakan berdasarkan sel dengan VBA

Lembaran cetakan berdasarkan sel bersebelahan dengan VBA


Lembaran cetakan berdasarkan sel dengan VBA


Jika terdapat dua helaian, anda mahu mencetak Sheet1 atau Sheet2 atau kedua-dua helaian berdasarkan Cell A1 di Sheet1. Sila lakukan seperti di bawah:

Dalam kes ini, masukkan 1 menunjukkan untuk mencetak helaian pertama, masukkan 2 untuk mencetak helaian kedua, dan 3 untuk mencetak kedua helai.

1. Masukkan 1, 2, atau 3 seperti yang anda perlukan untuk A1 dalam helaian pertama, dan tekan Alt + F11 kunci untuk dibuka Microsoft Visual Basic untuk Aplikasi tingkap. Lihat tangkapan skrin:
lembaran cetak doc oleh sel 1

2. klik Memasukkan > Modul, dan tampal di bawah kod di dalam Modul skrip. Lihat tangkapan skrin:

VBA: Cetak Lembaran berdasarkan nilai sel

Sub PrintStuff()
'UpdayebyExtendoffice20180811
    Dim xRgVal As Variant
    Dim xSheets As Sheets
    Set xSheets = ActiveWorkbook.Worksheets
    xRgVal = xSheets(1).Range("A1").Value
    If (IsNumeric(xRgVal)) And (Len(xRgVal) = 1) Then
        Select Case xRgVal
            Case 1
                xSheets(1).PrintOut
            Case 2
                xSheets(2).PrintOut
            Case 3
                xSheets(1).PrintOut
                xSheets(2).PrintOut
            Case Else
                MsgBox "Enter1,2 or 3 into A1(1 print Sheet1 2 print Sheet2 3 print Sheet1 and Sheet2 ", , "KuTools For Excel"
                Exit Sub
            End Select
    Else
        Exit Sub
    End If
End Sub

lembaran cetak doc oleh sel 2

3. Akhbar F5 kunci untuk terus mencetak helaian.


Lembaran cetakan berdasarkan sel bersebelahan dengan VBA

Jika anda mempunyai berbilang helaian dalam buku kerja, dan anda ingin mencetak satu atau beberapa helaian berdasarkan nilai sel dari buku kerja ini, anda boleh melakukan seperti di bawah:

1. Buat helaian baru bernama Helaian Kawalan dalam buku kerja yang anda gunakan, dan senaraikan semua nama helaian dalam lajur A (masukkan atau tolak kunci kawalan yang anda perlukan). Lihat tangkapan skrin:
lembaran cetak doc oleh sel 3

2. Taipkan "cetak"Di sel bersebelahan bersebelahan dengan nama helaian jika anda mahu mencetaknya. Lihat tangkapan skrin yang ditunjukkan.
lembaran cetak doc oleh sel 4

3. Akhbar Alt + F11 kunci untuk membolehkan Microsoft Visual Basic untuk Aplikasi tetingkap, dan klik Memasukkan > Modul. Lihat tangkapan skrin:
lembaran cetak doc oleh sel 5

4. Tampal di bawah kod ke Modul, dan tekan F5 kunci untuk menjalankan kod.

VBA: Cetak berdasarkan sel yang bersebelahan

Sub CreateControlSheet()
'UpdatebyExtendoffice20170811
    Dim i As Integer
    Dim xCSheetRow As Integer
    Dim xSName As String
    Dim xCSheet As Variant
    Dim xRgVal As String
    On Error Resume Next
    xSName = "Control Sheet"
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set xCSheet = ActiveWorkbook.Worksheets(xSName)
    xCSheetRow = xCSheet.Range("B65536").End(xlUp).Row
    For i = 2 To xCSheetRow
        xRgVal = xCSheet.Range("B" & i).Value
        If xRgVal = "Print" Or xRgVal = "print" Then
            If xCSheet.Range("A" & i).Value <> "" Then
                ActiveWorkbook.Worksheets(xCSheet.Range("A" & i).Value).PrintOut
            End If
        End If
    Next
    xCSheet.Delete
    ActiveWorkbook.Worksheets.Add
    ActiveSheet.Name = "Control Sheet"
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Sheet Name"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Print?"
    For i = 1 To ActiveWorkbook.Worksheets.Count
        Range("A" & i + 1).Value = ActiveWorkbook.Worksheets(i).Name
    Next
    Cells.Columns.AutoFit
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

lembaran cetak doc oleh sel 6

Selepas menjalankan kod tersebut, lembaran akan dicetak sekarang, dan pada masa yang sama, Helaian Kawalan baru akan menggantikan yang lama.

Petua.Jika anda mempunyai Kutools untuk Excel'S Buat Senarai Nama Lembaran utiliti, anda dapat dengan cepat membuat senarai semua nama lembaran dalam lembaran baru dengan pautan yang dapat diklik.Ia berfungsi penuh tanpa batasan pada hari 60, sila muat turun dan dapatkan percubaan percuma sekarang.


lembaran cetak doc oleh sel 7

Cadangan Alat Produktiviti untuk Excel

kte tab 201905

Kutools untuk Excel Membantu Anda Selalu Menyelesaikan Kerja di Hadapan Masa, dan Berdiri Daripada Orang

  • Lebih daripada ciri-ciri canggih 300 yang canggih, yang direka untuk senario kerja 1500, meningkatkan produktiviti oleh 70%, memberi anda lebih banyak masa untuk menjaga keluarga dan menikmati kehidupan.
  • Tidak perlu lagi menghafal formula dan kod VBA, berikan rehat dari otak anda sekarang.
  • Menjadi pakar Excel dalam minit 3, Operasi yang rumit dan berulang boleh dilakukan dalam beberapa saat,
  • Mengurangkan beribu-ribu operasi papan kekunci & tetikus setiap hari, mengucapkan selamat tinggal kepada penyakit pekerjaan sekarang.
  • 110,000 orang yang sangat berkesan dan pilihan syarikat 300 + yang terkenal di dunia.
  • Ciri-ciri penuh 60-hari adalah percubaan percuma. Jaminan wang balik 60 hari. Tahun 2 peningkatan dan sokongan percuma.

Membawa Browsing Tab dan Editing ke Microsoft Office, Jauh Lebih Berkuasa Daripada Tab Penyemak Imbas

  • Tab Pejabat direka untuk Aplikasi Pejabat Word, Excel, PowerPoint dan Lain-lain: Penerbit, Akses, Visio dan Projek.
  • Buka dan buat beberapa dokumen dalam tab baharu pada tetingkap yang sama, dan bukannya dalam tetingkap baru.
  • Meningkatkan produktiviti anda oleh 50%, dan mengurangkan beratus-ratus klik tetikus untuk anda setiap hari!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.