Excel VBA質問箱 IV

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

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


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

【29964】他ファイルからの数値の取得方法 katsu 05/10/17(月) 16:34 質問[未読]
【29969】Re:他ファイルからの数値の取得方法 Kein 05/10/17(月) 16:49 回答[未読]
【29976】Re:他ファイルからの数値の取得方法 katsu 05/10/17(月) 17:08 質問[未読]
【29993】Re:他ファイルからの数値の取得方法 Kein 05/10/17(月) 20:12 回答[未読]
【30093】Re:他ファイルからの数値の取得方法 katsu 05/10/19(水) 16:20 お礼[未読]

【29964】他ファイルからの数値の取得方法
質問  katsu  - 05/10/17(月) 16:34 -

引用なし
パスワード
    例えば、Aファイルのアクティブにしたセルの数値を、Bファイルのアクティブなセルに入力するにはどうしたらよいのでしょうか。
 いまいち、質問の仕方がわるいかもしれませんがよろしくお願いします。

【29969】Re:他ファイルからの数値の取得方法
回答  Kein  - 05/10/17(月) 16:49 -

引用なし
パスワード
   Bファイルの方へ、以下のようなマクロを入れて実行してみて下さい。
Aファイルは開いているが、アクティブにはなっていない、という前提です。

Sub Test()
  Dim AR As Range
 
  Set AR = ActiveCell
  Application.ScreenUpdating = False
  Workbooks("A.xls").Activate
  ActiveWindow.RangeSelection.Copy AR
  ThisWorkbook.Activate
  Application.ScreenUpdating = True
  Set AR = Nothing
End Sub

【29976】Re:他ファイルからの数値の取得方法
質問  katsu  - 05/10/17(月) 17:08 -

引用なし
パスワード
   ▼Kein さん:
>Bファイルの方へ、以下のようなマクロを入れて実行してみて下さい。
>Aファイルは開いているが、アクティブにはなっていない、という前提です。
>
>Sub Test()
>  Dim AR As Range
> 
>  Set AR = ActiveCell
>  Application.ScreenUpdating = False
>  Workbooks("A.xls").Activate
>  ActiveWindow.RangeSelection.Copy AR
>  ThisWorkbook.Activate
>  Application.ScreenUpdating = True
>  Set AR = Nothing
>End Sub

Keinさん 早速の回答有り難うございます。
 上記のマクロを実行してみたのですが、Aファイルのアクティブセルには数式が入力されているので、コピーをするとうまくいきません。数式の計算結果の値だけを取得したいのですが、どのようにすればよいでしょうか。
 何度もお手数ですがよろしくお願い致します。

【29993】Re:他ファイルからの数値の取得方法
回答  Kein  - 05/10/17(月) 20:12 -

引用なし
パスワード
   Sub Test()
  Dim AR As Range
 
  Set AR = ActiveCell
  Application.ScreenUpdating = False
  Workbooks("A.xls").Activate
  ActiveWindow.RangeSelection.Copy
  AR.PasteSpecial xlPasteValues
  ThisWorkbook.Activate
  With Application
   .CutCopyMode = False
   .ScreenUpdating = True
  End With
  Set AR = Nothing
End Sub

で、出来ます。

【30093】Re:他ファイルからの数値の取得方法
お礼  katsu  - 05/10/19(水) 16:20 -

引用なし
パスワード
   ▼Kein さん:
>Sub Test()
>  Dim AR As Range
> 
>  Set AR = ActiveCell
>  Application.ScreenUpdating = False
>  Workbooks("A.xls").Activate
>  ActiveWindow.RangeSelection.Copy
>  AR.PasteSpecial xlPasteValues
>  ThisWorkbook.Activate
>  With Application
>   .CutCopyMode = False
>   .ScreenUpdating = True
>  End With
>  Set AR = Nothing
>End Sub
>
>で、出来ます。


Keinさん
 お礼が遅くなりましてすみません。
 試してみました。今度は、うまくいきました。
 大変助かりました。本当に有り難うございました。
 これで、仕事が先に進みます。

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