• ベストアンサー

エクセルマクロで複数選択中シート名取得

Excel2000です。 Ctrl+クリックで複数のシートを選択している状態で(作業グループ状態)、 マクロから現在選択中のシート名を知ることはできるのでしょうか?

  • kmb01
  • お礼率83% (10/12)

質問者が選んだベストアンサー

  • ベストアンサー
  • sakenomo
  • ベストアンサー率52% (35/67)
回答No.2

こんなかんじでしょうか。 Sub test() For Each Sh In ActiveWindow.SelectedSheets ActiveCell.Value = Sh.Name ActiveCell.Offset(1, 0).Select Next End Sub

kmb01
質問者

お礼

ありがとうございます。 ActiveWindow.SelectedSheetsで思った動作になりました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

エクセルのVBE画面のVBAProjectのThisWorkbookのSheetSelectionChangeイベントに Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) MsgBox ActiveSheet.Name End Sub と入れると、シートをクリックするごとに、Sheet1とかSheet2とか出ます。 こんな問題ではないですか。

関連するQ&A

  • エクセル 複数シートへの貼り付け

    複数シートへ同時に作業したいときはctrl+クリックで作業グループにしてからすればいいと思うのですが、これでは貼り付けた場合に出来ませんでした。複数シートへの貼り付け方法を教えて下さい。

  • EXCEL 複数のシートの同一の位置にコメントを入れたい

    EXCEL2000で、BOOK内の複数のシートの同一の位置(A1など)に、同じコメントを入れたいのですが、シートを作業グループにして「挿入」→「コメント」を選択しようと思っても、コメントという文字が薄くなってしまい選択できません。 1シートずつ挿入するしかないでしょうか? たくさんのシートに入れたいので、結構手間なのですが・・・。

  • EXCEL 選択したシートのデータをまとめるマクロ

    EXCEL2010で質問です。 シート1~10まであったとします。 そのうち、シート3~5を選択しておいてマクロを実行すると、新しいシートにシート3~5のデータをまとめるマクロを教えて下さい。 ファイルの全てのシートをまとめるマクロを見付けたので何とかしようとしたのですが、全然歯が立たずで(>_<) すみません。よろしくお願いいたします。

  • エクセルのマクロでシートの選択について

    よろしくお願いします WinXP SP3でEXCEL 2003を使用しています ブック名がtest.xls シートが("目次", "1", "2", "3", "4", "5") とあります ここでは仮に"5"までシートがありますが本来は変数であり、n + 1のように扱いたいです 以下のマクロで"目次"以外の全てのシートを選択しました ~~~~~ Sub Macro1() Dim i As Integer i = 2 Sheets(i).Select For i = i To 6 Sheets(i).Select False Next i End Sub ~~~~~ このマクロですとArrayを使わずとも、"目次"以外のシートを選択できますが For i = i To 6 の6を7以上にするとエラー終了します そこで以下の条件にてシートの選択を行いたいのですが方法がわからず困っております 1・シートの数が多くても"目次"以外のシートを全て選択したいです 2・iがシートの数を超えた場合はエラー終了せず、マクロを終了させたいです 3・Sheets(Array( "1", "2", "3", "4", "5")).Select のようなマクロは組みたくないです 大変恐縮ですが、教えていただけますでしょうか できればマクロをVBEにコピー&ペーストするだけで実行できるような 状態にしていただきますと非常に幸いです 何卒、よろしくお願いいたします

  • エクセル 複数シート検索のマクロ

    マクロ初心者です。 エクセルの文字列検索で、複数シートにまたがった場合のマクロ記述を知りたいです。 シートaとシートbの選択は下記となると思いますが、 Sub Macro1() Sheets(Array("a", "b")).Select Sheets("a").Activate End Sub その後で、検索窓([ctrl]+[f])を表示させたいのですが・・・。 よろしくご教示願います。

  • EXCELの複数のシートに同じページ設定をしたいです

    いつもお世話になっております。 マクロに初挑戦です。 すでに作成してあるブックに、同じページ設定をしたいです。 「マクロの記録」で、以下のマクロを作成しました。 Excel2003です。 Sub PageSetting() ' Keyboard Shortcut: Ctrl+Shift+F With ActiveSheet.PageSetup .RightHeader = "&A" '右上にシート名 .CenterFooter = "- &P -" '下中央にページ番号 .RightMargin = Application.InchesToPoints(0.393700787401575) '右余白1cm .TopMargin = Application.InchesToPoints(0.78740157480315) '上余白2cm .BottomMargin = Application.InchesToPoints(0.393700787401575) '下余白1cm .HeaderMargin = Application.InchesToPoints(0.590551181102362) 'ヘッダー1.5cm .FooterMargin = Application.InchesToPoints(0.196850393700787) 'フッター0.5cm End With End Sub ブック内のすべてのシートに適用するわけではないので、 複数シートを選択しておいて(作業グループ)、 まとめて適用したいのですが、どうすればよいのでしょうか? 今現在は、設定したいシートを1つずつ選択して、 Ctrl+Shift+F を押しています。 よろしくご指導お願い致します。

  • Excel2000で複数のシートを両面印刷したい。マクロで可能でしょうか?

    みなさん、いつもご丁寧に回答いただき有難うございます。  作業環境:    Windows XP Homeedithon    Excel2000 SP3    Canon ip4200(プリンター)  Excelで複数のシートがあり、それぞれを同時に両面印刷したい場合、現在はシート毎に印刷設定をしています。(シートを複数選択した状態で印刷設定した場合、最初に選択したシートにのみ印刷設定がされてしまうため)  その作業を簡略化するため、マクロ機能を利用して両面印刷設定をしたいのですが、そのようなことは可能なのでしょうか。マクロの作業記録機能を用い、印刷設定を試してみましたが、どうやら両面印刷のチェックは無視されたようです。  ご回答、よろしくお願いいたします。  

  • エクセルのシート上の画像をまとめて(個別に)選択するには?

    たとえばパワーポイントや一般的なグラフィックソフト(ベクター系)?では、 画像選択の際にドラッグをして囲い込むようにすればオブジェクトを選択できますよね。 エクセルのシート上に貼り付けてある画像は 個別にクリックするしか複数選択の方法はないのでしょうか? Shiftキーを押しながらクリックして選択すると、 通常のファイル操作のCtrlキーでの選択になりますが、 シート上に大量の画像があり、それを移動させるのが なかなか手間で。。。 初心者な質問ですみませんが、宜しくお願いします。m(_ _)m 環境:Win2000 Excel2000

  • 選択開始シートから選択終了シートまでを一気に選択す

    エクセル2010です。 ブック内には、 Sheet1~Sheet4まであるのですが、 Sheet1からSheet3までを一気に選択したい場合 Sheet1を選択しながら ctrl+シフト+ Sheet3を押せば、 Sheet1からSheet3まで選択できるかと思ったらできませんでした。 今はシート数が少ないから手作業で選択できますが 選択開始シートから選択終了シートまでを一気に選択するには どうすればいいでしょうか? 右クリック→全てのシートを選択で 全てのシートを選択できますが 全てではなく、 ある一定範囲のシートを選択したいです。 添付画像は手作業で一つ一つシートをクリックして選択した状態です。

  • エクセル 複数シート検索のマクロ

    以前、下記の質問をさせてもらい ---- 以下 --------------- エクセルの文字列検索で、複数シートにまたがった場合のマクロ記述を知りたいです。 シートaとシートbの選択は下記となると思いますが、 Sub Macro1() Sheets(Array("a", "b")).Select Sheets("a").Activate End Sub その後で、検索窓([ctrl]+[f])を表示させたいのですが・・・。 ---- 以上 --------------- に対して、以下のご回答を受けたのですが、 Sub TEST01() Sheets(Array("a", "b")).Select Cells.Select Application.Dialogs(xlDialogFormulaFind).Show End Sub うまく行く場合もあるのですが(と思い解決で締め切ってしまいました)、大抵の場合(該当文字列が複数あるとき?)にフリーズしてしまいます。 上記マクロだと、「検索する文字列」タイトルで[次を検索][閉じる][置換]ボタンが表示され(古いOffice?)、 マクロを使用しない通常の[ctrl]+[f]だと、「検索と置換」タイトルで[検索]と[置換]タグが表示されます(Office2003)。 また、マクロを実行した後は通常の[ctrl]+[f]、[編集]-[検索]が効かなくなってしまいます。 この部分はフリーズとは無関係かもしれませんが・・・。 フリーズしないマクロの記述と、出来れば検索終了後に特定のシートに戻るようなマクロも追加したいです。 また、別件になりますが、ファイルを開いた時に必ず特定のシートに位置づけられる事ができればそれもご教授願いたいです。

専門家に質問してみよう