Excel VBA質問箱 IV

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

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


46676 / 76735 ←次へ | 前へ→

【35027】Re:開いているBook上全てのSheetを選択するには
発言  かみちゃん  - 06/2/19(日) 15:23 -

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

>Sub 四本値並べ替え()

まず、このマクロ、何をしているのかわかりません。
コードを見る限り、
アクティブセルから、2列右隣に1列挿入して、
その列から5列右隣の列をその列に貼り付ける
ということでしょうか?
それをマクロの記録で記録して、整理すると、以下のようなコードだけでできると
思うのですが?

Sub Macro1()
 With ActiveCell
  .Offset(, 2).EntireColumn.Insert Shift:=xlToRight
  .Offset(, 2 + 5).Cut .Offset(, 2)
 End With
End Sub

それで、このマクロを題名のとおりのことをしたいならば、

Sub Macro2()
 Dim wb As Workbook
 Dim ws As Worksheet
 
 For Each wb In Workbooks
  wb.Activate
  For Each ws In Worksheets
   ws.Activate
   MsgBox wb.Name & " の " & ws.Name & "がアクティブです"
  Next
 Next
End Sub

とすればよく、
上記 Macro2 の MsgBox部分の次に
Call Macro1
とすれば、ご希望のことはできるかと思います。
なお、それぞれのシートのアクティブセルが基準になりますので、動作が不安定
になることも想定されるので、気をつけてください。
Call Macro1
の前に
Range("A1").Select
とかしてアクティブセルを指定しておけばいいかもしれません。
0 hits

【35021】開いているBook上全てのSheetを選択するには miku02 06/2/19(日) 11:16 質問
【35022】Re:開いているBook上全てのSheet... Blue 06/2/19(日) 11:35 回答
【35023】Re:開いているBook上全てのShee... ponpon 06/2/19(日) 11:40 発言
【35024】ponponさん、いつもありがとうございます! miku02 06/2/19(日) 13:12 質問
【35027】Re:開いているBook上全てのSheet... かみちゃん 06/2/19(日) 15:23 発言
【35032】かみちゃん、いつもありがとうございます! miku02 06/2/19(日) 17:20 質問
【35033】Re:開いているBook上全てのSheet... かみちゃん 06/2/19(日) 17:42 発言
【35035】よかったですw miku02 06/2/19(日) 17:53 お礼

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