0

背景: 名前を付けて保存ダイアログのデフォルトのファイル名に、TextBox から入力した特定のテキストを使用したいと考えています。

Word 2010 テンプレート .dotm である次の VBA スクリプトをドキュメントに実装しました。

Sub FileSaveAs()

'for testing
Dim fileName As String
fileName = Me.tb_myTextBox.Value & "_MyFileNameToSave"
MsgBox fileName

'use specific file name in save dialog
With Dialogs(wdDialogFileSaveAs)
  .Name = fileName
  .Show
 End With

End Sub

実行するとうまくいきます。.dotm を保存して閉じ、Windows エクスプローラーから再度開きました (「エンド ユーザー」として意味します)。ただし、この場合、テンプレートドキュメントを「エンドユーザー」として開いた後 (テンプレートを上書きせずに新しいドキュメントを保存できるようにするため)、何かを入力しても TextBox のコンテンツ/値は空です。それに。

では、テンプレートの「ドキュメント モード」で TextBox のデータを読み取るにはどうすればよいでしょうか。

4

2 に答える 2

0

テンプレートの「ドキュメント モード」で TextBox のデータを読み取るにはどうすればよいですか?

よく分からない。これは私のために働く:

フォームを作成します。

Private Sub btn_OK_Click()
    Dim fileName As String
    fileName = tb_myTextBox.Value & "_MyFileNameToSave"
    With Dialogs(wdDialogFileSaveAs)
      .name = fileName
      .Show
     End With
End Sub

このフォームを呼び出すサブを作成します。

 Sub FileSaveAs()
    UserForm1.Show
End Sub

これはすべてテンプレート/.dotm に保存されます。

次に、テンプレートからドキュメントを作成します (テンプレートをダブルクリックして、テンプレートからドキュメントを起動します)。Alt + F8 を押して、テンプレートからマクロを実行します (「Macros in」ドロップダウンからテンプレートを選択する必要がある場合があります)。結果: フォームが表示され、ドキュメントの名前を入力して [OK] をクリックすると、Word の [名前を付けて保存] ダイアログが表示され、ドキュメントに付けた名前が表示されます。

于 2012-07-07T14:47:34.293 に答える