Word VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


272 / 886 ←次へ | 前へ→

【630】Re:複数のフォーム対応
回答  りる  - 09/5/5(火) 20:27 -

引用なし
パスワード
   スーザン さん、こんばんわ。

>具体的に言いますと、フォームが複数あり、ワードのシートに転記したいのです。
>
>フォームAの情報を、ワード上の7段目
>フォームBの情報を、ワード上の8段目
>フォームCの情報を、ワード上の9段目
>フォームDの情報を、ワード上の10段目に、入力後、コマンドボタンをクリックして、ワード上にそれぞれ転記する。

内容からすると、マルチページで分岐したほうがよさそうですが、フォームが4つあるということでしょうか?
それぞれのフォームにCommandButton1とTextBox1があるとして(オブジェクト名が違う場合はそれに合わせてください)。

○FormAに。
Private Sub CommandButton1_Click()
  Test TextBox1.Text, 7, Me
End Sub

○FormBに。
Private Sub CommandButton1_Click()
  Test TextBox1.Text, 8, Me
End Sub

○FormCに。
Private Sub CommandButton1_Click()
  Test TextBox1.Text, 9, Me
End Sub

○FormDに。
Private Sub CommandButton1_Click()
  Test TextBox1.Text, 10, Me
End Sub

○標準モジュールを挿入して以下を記述。
Sub Test(arg1 As String, arg2 As Long, Optional arg3 As Object)
  'ドキュメントの先頭
  ActiveDocument.Range(Start:=0, End:=0).Select
  '3行目に移動(下に2つ移動)
  Selection.MoveDown wdLine, arg2 - 1, wdMove
  'そこに文字を挿入(選択範囲の拡張なし)
  With Selection
   .InsertBefore arg1
   .Collapse Direction:=wdCollapseEnd
  End With
  'フォームを閉じる
  If Not arg3 Is Nothing Then arg3.Hide
End Sub

A〜Cのボタンはフォームの切り替えで、Dだけ転記の場合は、
○FormAに。
Private Sub CommandButton1_Click()
  Me.Hide
  UserFormB.Show
End Sub

○FormBに。
Private Sub CommandButton1_Click()
  Me.Hide
  UserFormC.Show
End Sub

○FormCに。
Private Sub CommandButton1_Click()
  Me.Hide
  UserFormD.Show
End Sub

○FormDに。
Private Sub CommandButton1_Click()
  Test UserFormA.TextBox1.Text, 7
  Test UserFormB.TextBox1.Text, 8
  Test UserFormC.TextBox1.Text, 9
  Test Me.TextBox1.Text, 10, Me
End Sub

◎標準モジュールは上と同じ。

フォームを切り替えるよりもマルチページやフレームで対応するほうが簡単かもしれないですね。

808 hits

【628】複数のフォーム対応 スーザン 09/5/5(火) 15:04 質問[未読]
【630】Re:複数のフォーム対応 りる 09/5/5(火) 20:27 回答[未読]
【631】Re:複数のフォーム対応 スーザン 09/5/6(水) 14:35 質問[未読]
【632】Re:複数のフォーム対応 りる 09/5/7(木) 7:43 発言[未読]
【633】Re:複数のフォーム対応 スーザン 09/5/7(木) 22:01 発言[未読]
【635】Re:複数のフォーム対応 りる 09/5/9(土) 9:53 発言[未読]
【636】Re:複数のフォーム対応 スーザン 09/5/10(日) 19:52 お礼[未読]

272 / 886 ←次へ | 前へ→
ページ:  ┃  記事番号:
207162
(SS)C-BOARD v3.8 is Free