「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:3164
現在:2


ヘッダ、フッタでセルの参照

ページOpenOffice.org FAQの登録ページ
投稿者匿名
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2010-01-20 15:18:04 (水)
OSWindows XP
依存するページ
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

シート名や日付はボタンがあって選択出来ますが、シートとセルを指定してそこを参照するようなことは可能でしょうか?

よろしくお願いします。


もう少しご説明を

M.Kamataki (2010-01-20 15:34:55 (水))

「ヘッダ(ページスタイル:標準)」ダイアログがありますね。こちらの「ユーザー定義ヘッダー」欄に、ボタンが並んでおり、「シート名」「日付」などがあります。こちらの設定に関しての質問ですね。

「シートとセルを指定して」というのは、「Sheet1.A101」というような指定でしょうか。

また、目的を書いていただくとわかりやすいと思います。

その通りです

匿名 (2010-01-20 15:40:19 (水))

普段シートを日付別などで作成してヘッダでシート名を指定していたのですが、分けていたシートを1つのシートにまとめてみようと思ったのですが、その場合にヘッダにどうやって任意の日付を自動で入れようかと思った次第です。

そこでセルを参照する方法があればと思い質問させてもらいました。
簡単なサンプルを添付致します。
B1のセルにオートフィルタで選択したのと同じものを入力してそれがヘッダで指定出来ればと考えております。

さらにお聞きします

M.Kamataki (2010-01-21 20:17:25 (木))

サンプルの 1シート.ods を見ると、A3からA9まで「月」という曜日名が並んでいます。例えば、A3セルの参照フィールドをヘッダに挿入したいということでしょうか。

また月曜日の表とは別に、火曜日、水曜日の表を印刷する場合、ヘッダの書き換えが必要になると思いますが、このあたりの運用はどうお考えですか。

無題

匿名 (2010-01-22 12:21:55 (金))

原始的ではありますが、B1セルにオートフィルタで選択した曜日と同じ曜日を手入力してB1セルをヘッダで参照出来たらと考えています。

マクロを使うことになると思います

M.Kamataki (2010-01-22 15:07:45 (金))

Excel 2003を調べてみましたが、ヘッダやフッタにセルを参照するフィールドを埋め込むことはできないようでした。Calcにそのような機能が付いても、Excelとは相互運用ができなくなります。また、OpenDocument Format(ODF)の仕様変更が絡むと大変です。今回のようなご質問は、やはりマクロで対応するのが良いと思います。

以下にサンプルを用意しました。

filefaq5_236sheet.ods

マクロが含まれているので、オプションのセキュリティにある「マクロセキュリティ」の設定が「高」であれば「中」に変更する必要があります。ファイル読み込み時のダイアログでマクロを有効にしてください。「ファイル」メニューの「ヘッダにB1セルを挿入して印刷」を選べば、B1セルの内容を参照し、「月曜日データ」や「火曜日データ」というヘッダに変更し、印刷プレビュー画面を表示します。直接プリントアウトしたい場合は、マクロのコメントを見て変更してください。

マクロは完全に以下のWebページの切り張りです。一応動いていますが、参考に留めてください。マクロのセル内容の取得は以下。

http://hermione.s41.xrea.com/pukiwiki/pukiwiki.php?OOoBasic%2FCalc%2Fcell#z21ca360

ヘッダ内容の変更は以下の「ヘッダおよびフッタの表示テキストの変更」。

http://wiki.services.openoffice.org/wiki/JA/Documentation/BASIC_Guide/Formatting_Spreadsheet_Documents

印刷部分は「マクロの記録」です。

VBAで記述すると

M.Kamataki (2010-01-22 16:21:51 (金))

Excelでも「マクロで実現」というTipsがいくつかありました。以下はそのうちのひとつ。

特定のセルの値をヘッダーに指定するマクロ (Excel97,2000)
http://www.nurs.or.jp/~ppoy/access/excel/xlM001.html

このページのサンプルを以下のように変更するとCalcでも動きました。

Option VBASupport 1
Sub MyPrint()
   With ActiveSheet.PageSetup
	.CenterHeader = Range("B1").Text + "曜日データ"
   End With
'   ActiveWindow.SelectedSheets.PrintPreview
   ActiveWindow.SelectedSheets.PrintOut
End Sub

VBAの印刷プレビューがCalcで実行できないのが残念ですが、Excelの情報もある程度、役立つと思います。

ありがとうございます

匿名 (2010-01-26 12:26:36 (火))

非常に参考になりました。

追加質問

匿名 (2010-02-17 08:32:48 (水))

OOo.Basicの方で作成してうまくいったのですが、マクロで作成されるヘッダーのフォントサイズを大きくしたいのですが、どのように記述すれば良いのでしょうか?
すみませんがご教授願います。

OOoBasic の場合です

ike@九州 (2010-02-17 11:34:29 (水))

Sub Main
 oDoc = ThisComponent
 oSheet = oDoc.getCurrentController.getActiveSheet
 sStyleName = oSheet.getPropertyValue( "PageStyle" )
 oStyleFamilies = oDoc.getStyleFamilies()
 oPageStyles = oStyleFamilies.getByName( "PageStyles" )
 If oPageStyles.hasByName( sStyleName ) Then
   oPageStyle = oPageStyles.getByName( sStyleName )
   With oPageStyle
     'ヘッダーをオン
     .HeaderOn = true
     '左右ページ設定を同じにする
     .HeaderIsShared = true
'       oHeader = .LeftPageHeaderContent
'       oHCtext = oHeader.CenterText     
'       oHLtext = oHeader.LeftText
'       oHRtext = oHeader.RightText
'       .LeftPageHeaderContent = oHeader
      '右側のページヘッダー設定取得     
      oHeader = .RightPageHeaderContent
      'ヘッダーの中央のテキスト取得
      oHCtext = oHeader.CenterText
'       oHLtext = oHeader.LeftText
'       oHRtext = oHeader.RightText       
      '文字設定
      oHCtext.string = oSheet.getCellRangebyName("B1").string
      'テキストカーソル作成(マウスクリック同等)
      oTextCursor = oHCtext.createTextCursor()
      'テキスト全て選択(マウスドラッグ選択同等)
      oTextCursor.gotoEnd(true)
      '英数字フォントサイズ
      oTextCursor.CharHeight = 12
      '日本語フォントサイズ
      oTextCursor.CharHeightAsian = 12
      '右側のページヘッダー設定適用する            
      .RightPageHeaderContent = oHeader
   End With
 End If
End Sub


左右ページ設定を同じ(.HeaderIsShared = true)にする場合は
右のページヘッダー設定のみで反映されるようです。(左は無視される)

ありがとうございます

匿名 (2010-02-17 16:21:50 (水))

期待通りの動作になりました。
ありがとうございます。

お名前:
題名:


添付ファイル: filefaq5_236sheet.ods 1283件 [詳細] file1シート.ods 545件 [詳細] file曜日別.ods 554件 [詳細]