- ベストアンサー
Word,Excelのプロパティ
Word,Excelで、ファイルメニュー→プロパティ→ ファイルの概要タブで表示されるテキストボックス に、いちいち入力しなくとも毎回同じ文字を設定 する方法はありますか? 例えば、自分の名前や会社名が自動的に設定される 様にしたいと思っています。 バージョンは、Word,Excelともに2000、OSは WindowsXPです。 以上
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 これらは、マクロになってしまいます。設定場所を良く確かめながら行ってください。 なお、このような方法を使いたくない場合は、DSO.dll の再配布権がないので、たぶん、フリーソフトウェアはないと思いますが、ファイルを選んで、そこに設定するツールは作ることが出来ます。 以下はサンプルです。COMPANY_NAME と AUTHOR_NAME のところを任意に設定してください。 '--------------------------------- 'Excel用 'Personal.xls の ThisWorkbook へ '--------------------------------- Private WithEvents App As Application Private Sub Workbook_Open() Set App = Application End Sub Private Sub App_NewWorkbook(ByVal Wb As Workbook) Const COMPANY_NAME As String = "Wendy Co. Ltd" Const AUTHOR_NAME As String = "Wendy AD" With Wb .BuiltinDocumentProperties(3) = AUTHOR_NAME 'Author .BuiltinDocumentProperties(21) = COMPANY_NAME 'Company End With End Sub '--------------------------------- 'Word 用 'Normal.Dot のThisDocument に '--------------------------------- Private Sub Document_New() Const COMPANY_NAME As String = "Wendy Co. Ltd" Const AUTHOR_NAME As String = "Wendy AD" With ActiveDocument .BuiltInDocumentProperties(3) = AUTHOR_NAME 'Author .BuiltInDocumentProperties(21) = COMPANY_NAME 'Company End With End Sub '---------------------------------
その他の回答 (5)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 細かく書かれていませんでしたが、#4の私のマクロは、新規ブックのみに適用されます。今までのものには、#4のマクロでは出来ません。 また、Excelの場合は、新規ワークブックに適用されるのは、Application イベントのNewWorkbook です。本来は、Class 設定になりますが、それを省略するには、ThisWorkbook に設定させます。Wordには、最初から、そのイベントがついています。 しかし、後付けで、プロパティを入れる場合は、今までの経験で、やはり DSO(正しくはDSOfileでした)を使うのがよろしいのではないかと思います。通常、読み込んで行う場合、ファイルを全てを読み込んでから行う関係で、大きなファイルの場合は手間が掛かります。ファイルを開けないままに書き換えることができます。(註:保存はしますからタイムスタンプは更新されます)もし、必要でしたら、コードを掲示します。
お礼
VBAもろくにできない私なので、結局Wendy02様 とh20060121様のやり方を併せた方法で対処する事 としました。DSOfileについては、残念ながら全く 知識が無いので、せっかくですが今回はコードの ご提示は結構です。 それでも、プロパティ設定マクロと、マクロを実行 するツールバーのボタンを作成する方法がわかり ましたので、私としては大きな収穫でした。 ありがとうございました。
#1、2です > -----Original Message----- ところで、Excelを起動する度にこのマクロだけを自動実行し(あるいはファイルを開く度にこのマクロだけを実行し)、保存した際に既存のプロパティがマクロで指定した内容に変更される様にする事は可能でしょうか? > -----Original Message----- すべてのbookにこのマクロをを組み込み、Workbook_Openに入れるか、 このマクロを組み込んだbookを作成し、プロパティを変更したいbookを開き、このマクロを実行するか、 どちらかになります。 すべてのbookにマクロを組み込むのは大変なので、 後者がお勧めです。
お礼
ありがとうございます。 システム(or隠し)フォルダやファイルは さわりたくなかった(回答NO.4)ので、 後者のやりかたを試みたのですが、Word では成功しなかったので、結局以下の様に しました。 Word:Normal.Dotにプロパティを設定する マクロと、マクロを実行するボタン (ツールバー)を作成した。 これは他のWord文書でも有効 でした。 Excel:プロパティを変更するマクロと、 マクロを実行するボタン(ツールバー) を組み込んだファイルを作成し、 一度それを読み込んだ後に、プロパティ を変更するファイルを開く。(マクロ 変更ボタンは有効。) 以上です。 Normal.Dotは「ファイルの検索」機能でみつけ ました。マクロとマクロ実行ボタンを組み込んだ ダミーのファイルを作成し、「名前を付けて保存」 する際に、ファイルの種類を「文書テンプレート」 で指定すると、Normal.Dotと同じフォルダに作成 されます。後は「ファイル名の変更」により、 マクロ組み込みファイルをNormal.Dotにすれば 完了です。この後開いたWord文書でも、マクロ 実行ボタンは有効でした。 結局ファイルを開くだけでプロパティを設定する やり方はできなかったのですが、それでも今迄の 様に手入力で設定するよりは簡単に済みそうです。 勉強になりました。♪
- 1936masa
- ベストアンサー率21% (10/46)
ちょっと質問からそれるかも知れませんが、”ToClip"と言うフリーソフトの導入も選択肢の一つかと思います。 ご質問の本筋以外にも利用できます、一度お試しを・・・。
#1です 検索しましたら、見つかりました http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_010_030.html こちらが参考になるかと。最後の1行に マクロから設定する場合は、このサンプルの式の左右を入れ替えるイメージで行なえます。 と書いてあります、
補足
ありがとうございます。 マクロでプロパティを設定する方法は理解 できました。 ところで、Excelを起動する度にこのマクロ だけを自動実行し(あるいはファイルを開く度に このマクロだけを実行し)、保存した際に既存の プロパティがマクロで指定した内容に変更される 様にする事は可能でしょうか? 恐縮ですが、ご存知でしたら教えて下さい。 以上
すべては無理(macroなら可能か?)ですが ツール-オプション ユーザ名 は、プロパティの作成者です。 会社名は、ユーザアカウントで設定した 会社名が入ります
お礼
ありがとうございます。 システム(隠し)フォルダやファイルは さわりたくなかったので、回答NO.5の 後者のやりかたを試みたのですが、Word では成功しなかったので、結局以下の様に しました。 Word:Normal.Dotにプロパティを設定する マクロと、マクロを実行するボタン (ツールバー)を作成。 Excel:プロパティを変更するマクロと、 マクロを実行するボタン(ツールバー) を組み込んだファイルを作成し、 一度それを読み込んだ後に、プロパティ を変更するファイルを開く。(マクロ 変更ボタンは有効。) 以上です。 勉強になりました。♪