Σχεδίαση περιγράμματος στο κάτω μέρος της σελίδας ανά σελίδα σε μακροεντολή

Ημερομηνία δημιουργίας σελίδας :

Επισκόπηση

Κατά την εκτύπωση, νομίζω ότι χρησιμοποιείται συχνά ως πλαίσιο του χαρτιού για να σχεδιάσετε ένα περίγραμμα στην κεφαλίδα και τα τέσσερα. Ωστόσο, εάν το χαρτί είναι ένα μόνο φύλλο, χρειάζεται μόνο να σχεδιάσετε το περίγραμμα με μη αυτόματο τρόπο, αλλά εάν γίνει περισσότερες από μία σελίδες, το περίγραμμα δεν θα εμφανίζεται στο κάτω μέρος κάθε σελίδας. Υπάρχει επίσης μια μη αυτόματη υποστήριξη εκ νέου, αλλά αν προσθέσετε ή αφαιρέσετε γραμμές στη μέση, θα πρέπει να σχεδιάσετε εκ νέου το περίγραμμα σε όλες τις σελίδες.

Αυτή η ενότητα περιγράφει τον τρόπο χρήσης μακροεντολών για την αυτόματη σχεδίαση περιγραμμάτων στο κάτω μέρος κάθε σελίδας.

マクロで改ページ単位でページ下部に罫線を引く

Επιβεβαιωμένη έκδοση της λειτουργίας

Υποστηριζόμενη έκδοση του Excel

  • 2010
  • 2007
  • 2003
  • (Μπορεί να λειτουργεί με άλλες εκδόσεις, αλλά δεν έχει επιβεβαιωθεί.)

Βεβαιωθείτε ότι η έκδοση του Excel

  • 2010
  • 2007
  • 2003

Περιεχόμενα

1ページの印刷

Εάν εκτυπώσετε μία σελίδα, μπορείτε να σχεδιάσετε ένα περίγραμμα στο κάτω μέρος της γραμμής για εκτύπωση χωρίς προβλήματα.

複数ページ印刷時の最下行

Ωστόσο, εάν έχετε περισσότερες από μία σελίδες, μπορείτε να σχεδιάσετε ένα περίγραμμα μόνο στο κάτω μέρος της γραμμής, αλλά το περίγραμμα δεν θα εμφανίζεται στην κάτω γραμμή κάθε σελίδας. Εάν θέλετε το περίγραμμα να εμφανίζεται σε κάθε σελίδα, πρέπει να εφαρμόσετε με μη αυτόματο τρόπο ένα περίγραμμα στην αλλαγή σελίδας.

Ωστόσο, εάν προσθέσετε ή καταργήσετε μια γραμμή στη μέση, η γραμμή της αλλαγής σελίδας και η γραμμή του περιγράμματος αποκόπτονται, επομένως είναι ενοχλητική, επειδή γίνεται ξανά draw.

Έτσι πάω να χρησιμοποιήσω μια μακροεντολή για να σχεδιάσετε ένα περίγραμμα σε μια γραμμή αλλαγής σελίδας χύμα.

ボタンの配置

Δεν έχει σημασία με ποιον τρόπο να το ξεκινήσετε, επειδή μπορείτε να το εκτελέσετε με μια ενσωματωμένη μακροεντολή, αλλά στο δείγμα, τοποθετώ ένα κουμπί σε ξεχωριστό φύλλο και ζωγραφίζω ένα περίγραμμα στην αλλαγή σελίδας όταν πατάω το κουμπί.

Εάν θέλετε να διανείμετε κάτι που περιέχει ήδη μακροεντολές, μπορείτε απλώς να μεταβιβάσετε το αρχείο ως έχει, αλλά αν θέλετε να συγκεντρώσετε τη μακροεντολή μόνοι σας, ορίστε το Excel ώστε να μπορείτε να συγκεντρώσετε τη μακροεντολή. Για πληροφορίες σχετικά με αυτήν τη λειτουργία, ανατρέξτε στο θέμα Εμφάνιση της καρτέλας Ανάπτυξη για να ενεργοποιήσετε την τοποθέτηση φόρμας και την ανάπτυξη προγραμμάτων VBA .

マクロの登録

Όταν τοποθετείτε ένα κουμπί, εμφανίζεται το παράθυρο διαλόγου δήλωσης μακροεντολών, επομένως ας το δημιουργήσουμε, ώστε να μπορείτε να εκτελέσετε το συμβάν κλικ πατώντας το κουμπί "Δημιουργία".

Δεν πρόκειται να υπεισέλθουμε σε πολλές λεπτομέρειες σχετικά με τις μακροεντολές ή τη Visual Basic, επομένως ελέγξτε το ξεχωριστά.

Όταν ανοίξει το πρόγραμμα επεξεργασίας της Visual Basic, προσθέστε τον ακόλουθο κώδικα: Μπορείτε να σχεδιάσετε ένα περίγραμμα σε μια γραμμή αλλαγών σελίδας σε ένα καθορισμένο φύλλο, καλώντας αυτήν τη λειτουργία.

Έχω ένα σχόλιο σχετικά με την περιγραφή της λειτουργίας, γι 'αυτό παρακαλώ ελέγξτε το.

'【概要】
' 改ページプレビューに合わせて、ページの下に黒の羅線を引きます。
'
'【引数】
' targetSheet    : 改ページラインの描画対象シート
'  lineStyle      : 罫線のスタイル。XlLineStyle 列挙型から指定。
'  lineWeight     : 罫線の太さ。XlBorderWeight 列挙型から指定。
'  lineColorIndex : 罫線の色。XlColorIndex 列挙型から指定、またはカラー パレットのインデックス値を指定。
'
'【備考】
'  一度罫線を設定すると戻せないので注意。
Private Sub SetHPageBreakLines(targetSheet As Worksheet, _
                               Optional lineStyle As XlLineStyle = xlContinuous, _
                               Optional lineWeight As XlBorderWeight = xlThin, _
                               Optional lineColorIndex As XlColorIndex = xlAutomatic)

  ' 列の最大位置取得
  Dim maxColumn As Integer
  maxColumn = targetSheet.UsedRange.Columns.Count
    
  ' 各ページ描画
  For Each hpg In targetSheet.HPageBreaks
    Dim row As Integer
    Dim targetCell As Range
    row = hpg.Location.row - 1
    Set targetCell = targetSheet.Range(targetSheet.Cells(row, 1), targetSheet.Cells(row, maxColumn))
    
    ' 罫線のプロパティを設定する
    With targetCell.Borders(xlEdgeBottom)
      .lineStyle = lineStyle
      .Weight = lineWeight
      .ColorIndex = lineColorIndex
    End With
  Next
    
End Sub

Η διαδικασία κλικ του κουμπιού έχει ως εξής. Εάν καθορίσετε ένα φύλλο για τη συνάρτηση SetHPageBreakLines που δημιουργήσατε, μπορείτε να σχεδιάσετε ένα περίγραμμα σε αυτό το φύλλο. Εάν θέλετε επίσης να καθορίσετε ένα στυλ περιγράμματος, μπορείτε να το καθορίσετε με τα υπόλοιπα ορίσματα.

Επειδή είναι δείγμα, το όνομα του φύλλου καθορίζεται απευθείας στη μακροεντολή, αλλά νομίζω ότι είναι γενικότερο να καταστεί δυνατή η εγγραφή του ονόματος του φύλλου στο κελί και να είναι σε θέση να αναφερθεί στο κελί.

'【概要】
'  ボタンクリックイベント
Sub ボタン1_Click()
  ' 対象シート
  Dim syoriSheet As Worksheet
  Set syoriSheet = Worksheets("ドキュメント")

  ' 罫線を設定
  Call SetHPageBreakLines(syoriSheet)

  ' 下は線のスタイル指定
  'Call SetHPageBreakLines(syoriSheet, xlContinuous, xlThin, xlAutomatic)

  MsgBox syoriSheet.HPageBreaks.Count & "ページ分の線の設定が完了しました。"
End Sub

各ページ毎の罫線表示

Όταν εκτελείτε τη μακροεντολή, μπορείτε να δείτε ότι η κάτω γραμμή κάθε σελίδας βρίσκεται στο περίγραμμα. Μπορείτε επίσης να τον μεταβιβάσετε στην Προεπισκόπηση εκτύπωσης.

Ως προειδοποίηση, νομίζω ότι είναι καλό να εκτελέσετε τη μακροεντολή μόνο κατά την εκτύπωση, επειδή το περίγραμμα που όταν η μακροεντολή εκτελείται μία φορά δεν μπορεί να επιστραφεί.