Excel VBA質問箱 IV

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

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


6503 / 13644 ツリー ←次へ | 前へ→

【44848】たびたびすいません。ブック名をいろいろ変えてもマクロが使えるようにした... masa 06/12/3(日) 17:21 質問[未読]
【44849】Re:ブック名をいろいろ変えてもマクロが使... かみちゃん 06/12/3(日) 17:27 発言[未読]
【44850】Re:ブック名をいろいろ変えてもマクロが使... masa 06/12/3(日) 17:48 お礼[未読]

【44848】たびたびすいません。ブック名をいろいろ...
質問  masa E-MAIL  - 06/12/3(日) 17:21 -

引用なし
パスワード
   初心者なもので間違えてフォルダとブックを間違えて表記しました。
フォルダ(事務処理)の内に、実績ブックとNEWブックが存在しています。
そして 実績ブック名を2006実績名に変更し、マクロを実行したところ下記のようなエラーが出たしだいです。

Windows("実績.xls").Activate
の部分でエラーが発生しました。2006実績 とブック名に訂正すれば、マクロは
実行できるのですが、ブック名をいろいろな名前に変える度ごとに修正しなくてもいいようにしたいのです。お教えください。よろしくお願いします。
ちなみに、下記のように作っています。

2006実績ブックを開いた状態で 下記のようにマクロ(集計)を実行しました。

Sub 集計()
'
' 集計 Macro
' マクロ記録日 : 2006/11/19 ユーザー名 :
'

'
Dim vbyn As Integer
  vbyn = MsgBox("一部連携していない部分がありますので了解してください!", vbOKCancel, "")
  Application.ScreenUpdating = False
Dim i As Integer
Dim Check As Integer
Dim mp As String
mp = ThisWorkbook.Path
Check = 0
  For i = 1 To Workbooks.Count
    If Workbooks(i).Name = "NEW.xls" Then
      Workbooks(i).Activate
      Check = 1
    End If
  Next i
  
If Check = 0 Then
  Workbooks.Open "" & mp & "\NEW.xls"
End If

Application.ScreenUpdating = False
 Windows("実績.xls").Activate ← この部分をフレキシブルに使えるように
したいのです。
 
 Sheets("資料").Select

【44849】Re:ブック名をいろいろ変えてもマクロが...
発言  かみちゃん  - 06/12/3(日) 17:27 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>初心者なもので間違えてフォルダとブックを間違えて表記しました。
>フォルダ(事務処理)の内に、実績ブックとNEWブックが存在しています。
>そして 実績ブック名を2006実績名に変更し、マクロを実行したところ下記のようなエラーが出たしだいです。

[44844]からのスレッドに続けてコメントいただければよかったのですが、
処理の先頭で、アクティブブックを取得するようにしてはいかがですか?

以下のような感じです。

Sub test()
 Dim MyWB As Workbook
 
 Set MyWB = ActiveWorkbook
 
 MsgBox MyWB.Name
 MyWB.Activate
End Sub

なお、[44844]からのスレッドには、何かのコメントをしていただきたいと思います。

【44850】Re:ブック名をいろいろ変えてもマクロが...
お礼  masa E-MAIL  - 06/12/3(日) 17:48 -

引用なし
パスワード
   どうもありがとうございました。これで解決しました。どうもありがとうございました。


▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>初心者なもので間違えてフォルダとブックを間違えて表記しました。
>>フォルダ(事務処理)の内に、実績ブックとNEWブックが存在しています。
>>そして 実績ブック名を2006実績名に変更し、マクロを実行したところ下記のようなエラーが出たしだいです。
>
>[44844]からのスレッドに続けてコメントいただければよかったのですが、
>処理の先頭で、アクティブブックを取得するようにしてはいかがですか?
>
>以下のような感じです。
>
>Sub test()
> Dim MyWB As Workbook
> 
> Set MyWB = ActiveWorkbook
> 
> MsgBox MyWB.Name
> MyWB.Activate
>End Sub
>
>なお、[44844]からのスレッドには、何かのコメントをしていただきたいと思います。

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