同じスプレッドシートの他の部分へのハイパーリンクを含む列があり、この列をプログラム内では表示し、印刷時には非表示にしたいです。スペースを占有してはなりません。
私が見つけた唯一の解決策は、列ヘッダーを右クリックし(列全体が選択されるように)、書式設定のセルの保護タブで「印刷しない」にチェックを入れることですが、これでは列が非表示になるだけです。価値観列全体ではなく、列の一部が印刷されます。その結果、列は(少なくとも印刷プレビューによると)空白で印刷され、用紙のスペースを占有します。
私が言及している列は右端の列ですが、ドキュメントの中央の列にも適用できる解決策はありますか?
答え1
1) 印刷したいデータを選択する
2) 選択Format -> Print Ranges -> Define
3) 印刷します。
A:C
連続していない列を含む印刷範囲を作成すると、それらの列は別々のページに表示されることに注意してください。例: 列とを印刷する場合E:H
、A:C
はページ 1 に、E:H
はページ 2 に表示されます。
答え2
cybernetic.nomad が説明しているように、複雑な印刷範囲を制御するためのネイティブ オプションは限られています。印刷したくない列が末尾にある場合は、印刷範囲を定義してそれを除外するだけです (印刷範囲は [書式] タブで設定できます)。印刷しない列が 1 つ以上中央にある場合は、回避策を使用して目的を達成する必要があります。次の 2 つのオプションがあります。
印刷時に、印刷したくない列を非表示にすることができます。その後、非表示を解除します。選択した列を非表示にし、印刷し、非表示を解除するすべての操作を 1 つのショートカットで実行するマクロを記録することで、タスクを自動化できます。
別のシートに別のバージョンを作成して印刷します。印刷バージョンでは、単純なセル参照を使用して、選択した列のみを表示します。設定には 1 分しかかかりません。
たとえば、印刷シートの A1 に、実際のシートの最初の値へのセル参照を配置します。それをドラッグして、一番上の行全体を複製します。印刷したくない列を削除します。次に、行内のすべてのセルを選択し、下にドラッグして、必要なすべての行を複製します。実際のシートは変更される可能性があり、印刷バージョンにはそこにあるものがすべて反映されます。
行数の変化に対応するために、印刷シートに任意の数の行を事前に入力することができます。セルを参照するだけでなく、実際のシート上の空白に対して IF テストを使用してセルの値を表示するか、実際のセルが空の場合は null を表示します。
この方法を使用すると、印刷範囲をページ単位で必要な部分に設定できます (部分的なページは、表示されているコンテンツに基づいて印刷されます)。実際のデータが大きく変更されて印刷するページ数が変わる場合は、印刷範囲を調整します。