|
kyu さん。
はずしていたらごめんなさいで、
昔作った、エクセルを次々にワードに貼り付けるコードです。
ちょっと、質問が抽象的で答えにくいですが、
アクティブというか、ワードファイルの名前がわかっていれば、
Document("FILENAME")みたいな感じで操作はできますよ。
Private Sub CommandButton1_Click()
Dim cellStr01 As String, cellStr02 As String
Dim cellInt01 As Integer, cellInt02 As Integer
Dim roopCount As Integer, initialCount As Integer
Dim nextRange As Integer
Dim copyRange As String
cellStr01 = TextBox1.Text
cellStr02 = TextBox3.Text
cellInt01 = TextBox2.Text
cellInt02 = TextBox4.Text
nextRange = cellInt02
roopCount = TextBox5.Text
Label2.Visible = True
'指定回数(種数)分ループ。行ってらっしゃいって感じ。
For initialCount = 1 To roopCount Step 1
'コピーの範囲を先に格納。
copyRange = cellStr01 & cellInt01 & ":" & cellStr02 & cellInt02
'まず、エクセルからコピー
Workbooks(excelFile).Activate
Range(copyRange).Copy
'ワードにペースト
'まぁ、アクティブにしといて。
Documents(wordFile).Activate
'カーソルの場所をペースト。メタファイルを前面貼り付け。
Word.Selection.PasteSpecial Link:=False, _
DataType:=wdPasteEnhancedMetafile, _
Placement:=wdFloatOverText, DisplayAsIcon:=False
'ちょっと強引に次のページに移動。
Word.Selection.GoToNext wdGoToPage
'次の範囲へ移動。
cellInt01 = cellInt01 + nextRange
cellInt02 = cellInt02 + nextRange
Next initialCount
'貼り付けが終了したら。
Unload harihari
MsgBox "任務は成功しました。"
End Sub
|
|