Excel VBA質問箱 IV

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

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


11736 / 13646 ツリー ←次へ | 前へ→

【14387】wordを検索しそのファイルを名前を変えて保存 cond-fit 04/5/27(木) 21:08 質問[未読]
【14390】Re:wordを検索しそのファイルを名前を変え... ichinose 04/5/27(木) 23:48 発言[未読]
【14432】Re:wordを検索しそのファイルを名前を変え... cond-fit 04/5/28(金) 20:05 お礼[未読]
【14433】Re:wordを検索しそのファイルを名前を変え... cond-fit 04/5/28(金) 20:58 質問[未読]
【14445】Re:wordを検索しそのファイルを名前を変え... ichinose 04/5/29(土) 10:01 発言[未読]
【14454】Re:wordを検索しそのファイルを名前を変え... cond-fit 04/5/29(土) 18:09 お礼[未読]

【14387】wordを検索しそのファイルを名前を変えて...
質問  cond-fit E-MAIL  - 04/5/27(木) 21:08 -

引用なし
パスワード
   ExcelからWordのあるファイルを検索しそのファイルを名前を変えて保存する処理なのですが、検索は出来たのですがそのファイルを名前を変えて保存方法がわかりません。
どなたかご教授お願いします。

Dim wd As Object
Dim wdDoc As Object
Dim myPath As String
  
                   'Dドライブにカレントセット
   ChDrive "D"
   Msg = "改善提案書のファイル名を入力しなさい "
   Titie = "改善提案書ファイル名登録"
   GetStr = InputBox(Msg, Titie)
                'GetStrに名前を変える
    
   FilePath1 = "d:\テスト保存\" & GetStr & ".doc"
  
  Set wd = CreateObject("Word.Application")
                     '
  myPath = "D:\改善案フォーム.doc"
                     '元の名前を検索

  With wd
   .Visible = True
   .Documents.Open Filename:=myPath
  End With
    ****ここまででは元の名前のファイルの表示はできる。****
  
  Set wd = Nothing
                 ’ここで元の名前を入力した名前に変える予定
                  なのですがよくわかりません。

【14390】Re:wordを検索しそのファイルを名前を変...
発言  ichinose  - 04/5/27(木) 23:48 -

引用なし
パスワード
   ▼cond-fit さん:
こんばんは。

>ExcelからWordのあるファイルを検索しそのファイルを名前を変えて保存する処理なのですが、検索は出来たのですがそのファイルを名前を変えて保存方法がわかりません。

↑これが仕様だと額面どおり受け取るならば、
ワードのインスタンスを作成する必要はなさそうですが・・・。
つまり、xxxx.docというファイルを名前を変えてコピー出来ればよい訳ですよね?
'=============================
Sub main()
  Dim 元ファイル名 As String
  Dim 新ファイル名 As String
  元ファイル名 = "D:\My Documents\TESTエリア\sample.doc"
  新ファイル名 = Application.InputBox("ファイル入力")
  If 新ファイル名 <> "False" Then
   If flcopy(元ファイル名, "D:\My Documents\TESTエリア\" & 新ファイル名) = 0 Then
     MsgBox "コピー成功"
   Else
     MsgBox "コピー失敗"
     End If
   End If
End Sub
'==================================================================
Function flcopy(s_file As String, c_file As String) As Long
  On Error Resume Next
  filecopy s_file, c_file
  flcopy = Err.Number
End Function

ワード文書を開いて中身も変更して保存だ というなら
Wordにもマクロの記録がありますから、
保存操作をしてみて下さい。

【14432】Re:wordを検索しそのファイルを名前を変...
お礼  cond-fit E-MAIL  - 04/5/28(金) 20:05 -

引用なし
パスワード
   ▼ichinose さん:
>▼cond-fit さん:
>こんばんは。
>
>>ExcelからWordのあるファイルを検索しそのファイルを名前を変えて保存する処理なのですが、検索は出来たのですがそのファイルを名前を変えて保存方法がわかりません。
>
>↑これが仕様だと額面どおり受け取るならば、
>ワードのインスタンスを作成する必要はなさそうですが・・・。
>つまり、xxxx.docというファイルを名前を変えてコピー出来ればよい訳ですよね?
>'=============================
>Sub main()
>  Dim 元ファイル名 As String
>  Dim 新ファイル名 As String
>  元ファイル名 = "D:\My Documents\TESTエリア\sample.doc"
>  新ファイル名 = Application.InputBox("ファイル入力")
>  If 新ファイル名 <> "False" Then
>   If flcopy(元ファイル名, "D:\My Documents\TESTエリア\" & 新ファイル名) = 0 Then
>     MsgBox "コピー成功"
>   Else
>     MsgBox "コピー失敗"
>     End If
>   End If
>End Sub
>'==================================================================
>Function flcopy(s_file As String, c_file As String) As Long
>  On Error Resume Next
>  filecopy s_file, c_file
>  flcopy = Err.Number
>End Function
>
>ワード文書を開いて中身も変更して保存だ というなら
>Wordにもマクロの記録がありますから、
>保存操作をしてみて下さい。

ありがとうございます。
早速確認してみます。

【14433】Re:wordを検索しそのファイルを名前を変...
質問  cond-fit E-MAIL  - 04/5/28(金) 20:58 -

引用なし
パスワード
   ▼cond-fit さん:
>▼ichinose さん:
>>▼cond-fit さん:
>>こんばんは。
>>
>>>ExcelからWordのあるファイルを検索しそのファイルを名前を変えて保存する処理なのですが、検索は出来たのですがそのファイルを名前を変えて保存方法がわかりません。
>>
>>↑これが仕様だと額面どおり受け取るならば、
>>ワードのインスタンスを作成する必要はなさそうですが・・・。
>>つまり、xxxx.docというファイルを名前を変えてコピー出来ればよい訳ですよね?
>>'=============================
>>Sub main()
>>  Dim 元ファイル名 As String
>>  Dim 新ファイル名 As String
>>  元ファイル名 = "D:\My Documents\TESTエリア\sample.doc"
>>  新ファイル名 = Application.InputBox("ファイル入力")
>>  If 新ファイル名 <> "False" Then
>>   If flcopy(元ファイル名, "D:\My Documents\TESTエリア\" & 新ファイル名) = 0 Then
>>     MsgBox "コピー成功"
>>   Else
>>     MsgBox "コピー失敗"
>>     End If
>>   End If
>>End Sub
>>'==================================================================
>>Function flcopy(s_file As String, c_file As String) As Long
>>  On Error Resume Next
>>  filecopy s_file, c_file
>>  flcopy = Err.Number
>>End Function
>>
>>ワード文書を開いて中身も変更して保存だ というなら
>>Wordにもマクロの記録がありますから、
>>保存操作をしてみて下さい。
>
>ありがとうございます。
>早速確認してみます。

名前を変えて保存OKでした。
Word保存を出来ましたが、Wordで表示出来るのですが、
保存形式がWord形式では無いのですが。
何かコマンドが必要なのでしょうか?

【14445】Re:wordを検索しそのファイルを名前を変...
発言  ichinose  - 04/5/29(土) 10:01 -

引用なし
パスワード
   ▼cond-fit さん:
こんにちは。
>>>'=============================
>>>Sub main()
>>>  Dim 元ファイル名 As String
>>>  Dim 新ファイル名 As String
>>>  元ファイル名 = "D:\My Documents\TESTエリア\sample.doc"
>>>  新ファイル名 = Application.InputBox("ファイル入力")
>>>  If 新ファイル名 <> "False" Then
>>>   If flcopy(元ファイル名, "D:\My Documents\TESTエリア\" & 新ファイル名) = 0 Then
>>>     MsgBox "コピー成功"
>>>   Else
>>>     MsgBox "コピー失敗"
>>>     End If
>>>   End If
>>>End Sub
>>>'==================================================================
>>>Function flcopy(s_file As String, c_file As String) As Long
>>>  On Error Resume Next
>>>  filecopy s_file, c_file
>>>  flcopy = Err.Number
>>>End Function

>Word保存を出来ましたが、Wordで表示出来るのですが、
>保存形式がWord形式では無いのですが。
>何かコマンドが必要なのでしょうか?
ん?どういうことでしょうか?
上記のコードを実行してのことですか?

Inputboxを使っていますから、ファイル名の入力要求をしていますよね?
ここで、例えば、「samp.doc」と入力した場合、どのようになるということですか?

「samp」と入力してしまうと拡張子が付きませんから、Docファイルだと
Windowsは認識しません。よって、アイコンはWordのアイコンにはなりませんよ。

確認してみて下さい。

それから、こういう不具合とか意図した動作ではない場合は、
「このコードを入力データがこれで実行したら、出力がこれになった」
という情報を細かく記述して頂かないと意味がわからない場合が出てきます。

トラブルドキュメントを記述する事も大変だと思いますが、
よろしくお願いします。

【14454】Re:wordを検索しそのファイルを名前を変...
お礼  cond-fit E-MAIL  - 04/5/29(土) 18:09 -

引用なし
パスワード
   ▼ichinose さん:
>▼cond-fit さん:
>こんにちは。
>>>>'=============================
>>>>Sub main()
>>>>  Dim 元ファイル名 As String
>>>>  Dim 新ファイル名 As String
>>>>  元ファイル名 = "D:\My Documents\TESTエリア\sample.doc"
>>>>  新ファイル名 = Application.InputBox("ファイル入力")
>>>>  If 新ファイル名 <> "False" Then
>>>>   If flcopy(元ファイル名, "D:\My Documents\TESTエリア\" & 新ファイル名) = 0 Then
>>>>     MsgBox "コピー成功"
>>>>   Else
>>>>     MsgBox "コピー失敗"
>>>>     End If
>>>>   End If
>>>>End Sub
>>>>'==================================================================
>>>>Function flcopy(s_file As String, c_file As String) As Long
>>>>  On Error Resume Next
>>>>  filecopy s_file, c_file
>>>>  flcopy = Err.Number
>>>>End Function
>
>>Word保存を出来ましたが、Wordで表示出来るのですが、
>>保存形式がWord形式では無いのですが。
>>何かコマンドが必要なのでしょうか?
>ん?どういうことでしょうか?
>上記のコードを実行してのことですか?
>
>Inputboxを使っていますから、ファイル名の入力要求をしていますよね?
>ここで、例えば、「samp.doc」と入力した場合、どのようになるということですか?
>
>「samp」と入力してしまうと拡張子が付きませんから、Docファイルだと
>Windowsは認識しません。よって、アイコンはWordのアイコンにはなりませんよ。
>
>確認してみて下さい。
Inputboxの入力が間違っていました。
申し訳ありません。


>
>それから、こういう不具合とか意図した動作ではない場合は、
>「このコードを入力データがこれで実行したら、出力がこれになった」
>という情報を細かく記述して頂かないと意味がわからない場合が出てきます。
>
>トラブルドキュメントを記述する事も大変だと思いますが、
>よろしくお願いします。

初めて投稿いたもので、また、VBAのプログラムを作成が
まだ初心者でトラブル?の参考になるご意見ありがとうございます。
今後この様にしたいと思います。

11736 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free