[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エクセルAで別のエクセルBを開いて、エクセルAの"今月”という名前のシートのA1と同じ値の名前をもつ、エクセルBのシートを選択するマクロを作りたいのです。』(石田)
いつもお世話になっております。
説明が下手ですみません、以下に作りかけのコードをのせました。その中で・・
「Sheets("2月").Select」 の部分を、 もともとアクティブにしているAのエクセルの「今月」という、シートのA1と同じ値のシートを選択する、というふうに置き換えるにはどうしたらいいのでしょう。行いたいことは、入院カレンダー&医師勤務表2007年.xlsのなかの1月〜12月 という12 のシートのうち所定のシートを開きたいということなのです。
ご指導お願いいたします。
Sub 入院カレンダーを開く()
' 入院カレンダーを開く Macro
' マクロ記録日 : 2007/2/16 ユーザー名 : 125007
'
Sheets("今月").Select
Application.ScreenUpdating = False '画面の再描画停止
Workbooks.Open Filename:= _
"\\fssvr\書棚\入院予約:関西リハ病院\入院カレンダー&医師勤務表\入院カレンダー&医師勤務表2007年.xls"
Sheets("2月").Select ’⇒ この部分を置き換えたいのです。
Range("A2:U56").Select Application.CutCopyMode = False Selection.Copy
ThisWorkbook.Activate
Sheets("今月").Select
Range("A2:U2").Select ActiveSheet.Paste
Range("U56").Select Windows("入院カレンダー&医師勤務表2007年.xls").Activate
ActiveWindow.Close SaveChanges:=False
Application.ScreenUpdating = False '画面の再描画停止
End Sub
(石田)
こんなことでしょうか? (ROUGE) '---- Sub 入院カレンダーを開くのだ() Dim wb As Workbook, a As String Application.ScreenUpdating = False a = ThisWorkbook.Sheets("今月").Range("A1").Text Set wb = Workbooks.Open(Filename:= _ "\\fssvr\書棚\入院予約:関西リハ病院\入院カレンダー&医師勤務表\入院カレンダー&医師勤務表2007年.xls") wb.Sheets(a).Range("A2:U56").Copy ThisWorkbook.Sheets("今月").Range("A2:U56") wb.Close SaveChanges:=False Application.ScreenUpdating = True End Sub
老婆心ながら、ファイル名等は匿名性のものにされたほうが良いと思います。
お気づきとは思いますが、最後のステートメントは Application.ScreenUpdating = True でしょうか。 (おせっかい Mook)
本当ですね^^; とりあえず、Trueに修正しました。 (ROUGE)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.