[[20180305183243]] 『ヘッダテキストの取得について』(あみな) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ヘッダテキストの取得について』(あみな)

複数シートあるexcelファイルをシート単位で
PDF化するマクロを組んでいるんですが
PDF化する際のファイル名に各シートのヘッダに設定されている
テキストを使用したいと考えております。

PageSetupオブジェクトのCenterHeaderプロパティから
値を取得したところテキストだけでなく
フォントサイズ、フォント種類等の値も含めた文字が出力されます。

テキスト内容のみを出力することはできないでしょうか?

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 パソコンの調子が悪いので
手打ちですけど
Dim x As String
x = ActiveSheet.PageSetup.CenterHeader
Debug.Print x
としますと、
文字しか出ませんよ?

 パソコンがつながったので直しておきました
(SoulMan) 2018/03/05(月) 22:03

 文字を テスト
 書式を MSP明朝、太字 サイズ14

 以上をヘッダーに設定して、下のTestを実行しましたら

 Sub Test()
     Dim x As String
     x = ActiveSheet.PageSetup.CenterHeader
     Debug.Print x
 End Sub

 &"MS P明朝,太字"&14テスト
 ↑
 と出ましたよ?

 結構、厄介な案件だなぁと思っているんですけど。
 最悪、マイクロソフト社のヘッダー解析プログラムと同じものを作らなきゃならない。

(半平太) 2018/03/05(月) 22:52


 あっ、そうなんですね
失礼しました
そうすると右から何か目印を探して文字だけ
取り出すのが手っ取り早いですかね?
もう、お布団の中ですけど、、、
(SoulMan) 2018/03/06(火) 00:07

 又は、投稿前にテストした時は、
文字しか出なかったので、デフォルトに
戻すといいのかなぁ?
やっぱりダメかなぁ?
検証してないので何とも言えません
すみません、もう寝ます
(SoulMan) 2018/03/06(火) 00:12

 >そうすると右から何か目印を探して文字だけ
 >取り出すのが手っ取り早いですかね?

 右にあることが明白ならいいですが、
 右にもページ番号とか日付を入れる人がいるかも知れないし、
 「書式と見間違う様な文字列」を本文にしたい、なんて天邪鬼な人がいるかも知れないですからねぇ。

 今のところ、私にはお手上げです。

(半平太) 2018/03/06(火) 09:17


ここに質問書いてから私も調べてみましたが
単純には取れないですよね。

結構、厄介な案件だなぁと思っているんですけど。 最悪、マイクロソフト社のヘッダー解析プログラムと同じものを作らなきゃならない。

これはさすがに面倒…というか出来る気がしないです(笑

一旦、別な運用を考えて見ます。

ご回答ありがとうございました。
(あみな) 2018/03/06(火) 12:35


 こんにちは!
全てを網羅するのは難しいかもしれませんが
ごくごく普通のオーソドックスな
もの限定という事で考えてみました
何かの参考になれば幸いです
タイトルも何時もは
てすと
なんですけど、今回はちょっと長めの
吉本風にしておきました
では、では、
Option Explicit
Sub ひねっちゃダメよダメよダメなのよスペシャル()
Dim x As String
Dim r As Object
Set r = CreateObject("VBScript.RegExp")
r.Pattern = "&"".*""&\d{2}|&"".*""&\d{1}"
x = ActiveSheet.PageSetup.CenterHeader
Debug.Print x
x = r.Replace(x, "")
Debug.Print x
Range("G2").Value = x
Set r = Nothing
End Sub
(SoulMan) 2018/03/06(火) 15:48

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.