• 締切済み

エクセルで縦に長い表を2列印刷する方法

100行あるエクセルの縦長の表を2列に印刷する方法はありませんか。 B3からE3まで項目がありB4から100行あるデータを50行づつの2列に分けてA4用紙に印刷する方法を教えて下さい。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

エクセルソフトの設定やプリンターソフトの設定(背後にハードの設定)ではつかしいのでは。 データの上下左右関係などは、画面に見えて居るように印刷するのが大原則ででしょう。 ーー だからエクセルシートの場合には、そういう表を関数などで別途作って、そのシートを印刷する他ないでしょう。 === 関数の場はコピーと違い、セルの書式は持ってこれません。それが欠点です。 例 B,C,D,E列が元データとする。F列、K列,P列は空白列とする G4の式 =OFFSET(B4,50,0,1,1) H4の式 =OFFSET(C4,50,0,1,1) I4の式 =OFFSET(D4,50,0,1,1) J4の式 =OFFSET(E4,50,0,1,1) ーーー L4の式 =OFFSET($B4,100,0,1,1) M4の式 =OFFSET($C4,100,0,1,1) N4の式 =OFFSET($D4,100,0,1,1) O4の式 =OFFSET($E4,100,0,1,1) 以下略。 それぞれ下方向に50行式を複写。 データ行数が多い場合は同じ考えで4列右に加え、式を作る。 60行ずつなども可能。フォントや行高を調整する必要がある。 == 面倒なことで、私ならVBAでやりますが。 === もし、もっとスマートな方法が回答に出れば、私も勉強します。 ===== 改ページ・ページ区切り線を、適当な位置に(目視・手動で)入れる方法も良いかも しれない。 WEBで「ワークシート内の改ページを挿入、移動、削除する」で照会してください。 == これもVBAで出来る データ範囲に5行おきに改ページを設定するコード例 Sub 改ページ2() Dim i As Long Dim 最終行 As Long 最終行 = Cells(Rows.Count, 1).End(xlUp).Row For i = 6 To 最終行 Step 5 ActiveSheet.Rows(i).PageBreak = xlPageBreakManual Next i End Sub

  • vanpire99
  • ベストアンサー率19% (84/421)
回答No.1

出来るプリンタと出来ないプリンタがあります。

関連するQ&A