Reunaviivan piirtäminen sivun alareunaan sivu kerrallaan makrossa

Sivun luontipäivämäärä :

Yleiskatsaus

Tulostettaessa uskon, että sitä käytetään usein paperin kehyksenä, kun piirrät reunan otsikkoon ja kaikkiin nelosiin. Jos paperi on kuitenkin yksi arkki, sinun tarvitsee piirtää reuna manuaalisesti, mutta jos siitä tulee useampi kuin yksi sivu, reunaviiva ei näy kunkin sivun alareunassa. On myös manuaalinen uudelleen vetää tukea, mutta jos lisäät tai poistat viivoja keskellä, sinun täytyy uudelleen piirtää reunan kaikille sivuille.

Tässä osassa kuvataan, miten makrojen avulla voit piirtää reunoja automaattisesti jokaisen sivun alareunaan.

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

Toiminnon vahvistettu versio

Tuettu Excel-versio

  • 2010
  • 2007
  • 2003
  • (Se voi toimia muiden versioiden kanssa, mutta sitä ei ole vahvistettu.)

Varmista, että Excel-versio

  • 2010
  • 2007
  • 2003

Sisältö

1ページの印刷

Jos tulostat yhden sivun, voit piirtää reunaviivan rivin alareunaan, jotta tulostetaan ilman ongelmia.

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

Jos sinulla on kuitenkin useita sivuja, voit piirtää reunaviivan vain rivin alareunaan, mutta reunaviiva ei näy kunkin sivun alarivillä. Jos haluat reunaviivan näkyvän jokaisella sivulla, sinun on käytettävä sivun muutokseen reunaviivaa manuaalisesti.

Jos kuitenkin lisäät tai poistat rivin keskeltä, sivunvaihdon viiva ja reunaviiva katkaistaan, joten se on hankala, koska siitä tulee uudelleenpiirtäminen uudelleen.

Joten aion käyttää makroa piirtää reunan linjan sivun muutos irtotavarana.

ボタンの配置

Sillä ei ole väliä, miten aloittaa se, koska voit käyttää sitä sisäänrakennettu makro, mutta näyte, asetan painiketta erilliselle arkille ja piirtää reunan sivunvaihto, kun painan painiketta.

Jos haluat jakaa jotakin, joka sisältää jo makroja, voit välittää tiedoston sellaisenaan, mutta jos haluat koota makron itse, määritä excel, jotta voit koota makron. Lisätietoja tästä on kohdassa Näytä Kehitys-välilehti, jos haluat ottaa käyttöön lomakkeen sijoittelun ja VBA-ohjelman kehittämisen .

マクロの登録

Kun asetat painikkeen, makron rekisteröintivalintaikkuna tulee näkyviin, joten luodaan se, jotta voit suorittaa napsautustapahtuman painamalla "Uusi"-painiketta.

Emme aio mennä liian paljon yksityiskohtia makroja tai Visual Basic, joten tarkista se erikseen.

Kun Visual Basic -editori avautuu, lisää seuraava koodi: Voit piirtää reunaviivan sivurivin muutosten riville määritettyyn taulukkoon kutsumalla tätä toimintoa.

Minulla on kommentti kuvaus toiminto, joten tarkista se.

'【概要】
' 改ページプレビューに合わせて、ページの下に黒の羅線を引きます。
'
'【引数】
' 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

Painikkeen napsautusprosessi on seuraava. Jos määrität taulukon luomaasi SetHPageBreakLines-funktiolle, voit piirtää reunaviivan kyseiseen taulukkoon. Jos haluat myös määrittää reunaviivan tyylin, voit määrittää sen jäljellä olevilla argumenteilla.

Koska se on näyte, arkin nimi määritetään suoraan makrossa, mutta mielestäni on yleisempää, että arkin nimi voidaan kirjoittaa soluun ja pystyä viittaamaan soluun.

'【概要】
'  ボタンクリックイベント
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

各ページ毎の罫線表示

Kun suoritat makron, näet, että kunkin sivun alarivi on reunustettu. Voit myös tarkistaa sen tulostuksen esikatselussa.

Koska varoitus, mielestäni se on hyvä ajaa makro vain tulostettaessa, koska raja asetettu, kun makro suoritetaan kerran ei voida palauttaa.