戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
シートの後から前に向かって印刷

    [195735] シートの後から前に向かって印刷-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ momochan -(2023/05/16(19:01))
    □U R L/

      おたずねいたします。
      基点シートというシートがあり、そのシートのひとつ前から、前方に向かって
      最初のシートまで印刷したいのです。
      よろしくお願いいたします。




    [195736] Re[1]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ ヘンリー -(2023/05/17(08:44))
    □U R L/
      私なら、シート名を配列に入れて、
      配列のインデックスの大きい順から読んでいき、
      基点シートの前までは、印刷しない、
      基点シートの後からは印刷するとやると思います。
      
      動的配列にシートの1番名から入れていく
      For〜Next Step -1を使って、インデックスの大きい順に読む
      Ifを使って、基点シートまで読み飛ばし、
      基点シートの後のシートから印刷する
      
      こんな感じです。
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195737] Re[2]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ MK -(2023/05/17(13:38))
    □U R L/
      こういうことする人ないと思うけど、こんな方法も
      ある、というコードです。
      
      Sub test()
       Dim wscnt As Integer
       Dim kijunws As Worksheet
       Dim wsindx As Integer
       Dim prtsht As Worksheet
        Set kijunws = Worksheets("基準シート") '基準シート
        Set prtsht = kijunws '最初は基準シート 
        wsindx = kijunws.Index - 1
        For i = 1 To wsindx
         Set prtsht = prtsht.Previous '基準シートの一つ左のシート
         prtsht.PrintOut ’シートプリントアウト
        Next i
        Set prtsht = Nothing
        Set kijunws = Nothing
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195738] Re[3]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ MK -(2023/05/17(13:41))
    □U R L/

      基点シートを基準シートと見間違ってました。
      ここは調整してください。




    [195739] Re[4]: シートの後から前に向かって印刷-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ momochan -(2023/05/17(23:32))
    □U R L/

      ヘンリーさん、MKさん ありがとうございました。
      おかげで、正しく処理できました。




    [195740] Re[5]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ MK -(2023/05/19(08:17))
    □U R L/
      ヘンリーさんご提示の
      >For〜Next Step -1を使って
      の方法の一例です。
      
      Sub test2()
       Dim kitenws As Worksheet
       Dim wsindx As Integer
       Dim i As Integer
      
        Set kitenws = Worksheets("基点ート") '基点シート
        wsindx = kitenws.Index - 1 '印刷開始シートのシートインデックス
        For i = wsindx To 1 Step -1 '昇順でループ
          Worksheets(i).PrintOut 'シートプリントアウト
        Next i
      
        Set kitenws = Nothing
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195741] Re[6]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ MK -(2023/05/19(08:26))
    □U R L/
      >For i = wsindx To 1 Step -1 '昇順でループ
      
      昇順ではなく降順でした。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195744] Re[7]: シートの後から前に向かって印刷-

    記事引用/メール受信=OFF■

    □投稿者/ MK -(2023/05/20(08:42))
    □U R L/
      基点シートまで来たらフラグを上げてプリントアウトする方法です。
      
      Sub test3()
       Dim wscnt As Integer
       Dim i As Integer
       Dim flg As Boolean
         flg = False
         For i = Worksheets.Count To 1 Step -1
          If flg = True Then MsgBox Worksheets(i).Name & vbCrLf & "printout"
          'If flg = True Then Worksheets(i).PrintOut
          If Worksheets(i).Name = "基点シート" Then flg = True
        Next i
      End Sub


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G