No.4ベストアンサー
- 回答日時:
No.2です。
>Controls(1)の数字を変えると番号指定可能なのでしょうか?
Sub Macro1()
Dim Ws As String, stNo As Byte
Ws = Application.CommandBars("Workbook tabs").Controls(2).Caption
stNo = Sheets(Ws).Index
End Sub
のようにすればいいと思います。
stNoに表示されているシートの2番目のシート番号が返ります。
No.3
- 回答日時:
配列myStに表示されているシートの左から指定番号のシート名を格納します。
St_noに取得したい番号(表示されている左からn番目のシート番号)を指定してください。
最下のコードでは1,2,4番目の表示されているシートを取得してmyStに格納します。
Sheet1~Sheet10のうち、奇数シートが非表示設定の場合、以下が格納されます。
mySt(0) = Sheet2
mySt(1) = Sheet4
mySt(2) = Sheet8
Sheets(mySt).Selectなどでシート選択できるように文字列配列に格納していますが、
取り扱いやすいようにオブジェクト変数として扱うには以下を変更してください。
① Dim mySt() As String
↓
Dim mySt() As Worksheet
② mySt(nxSt) = Worksheets(i).Name
↓
Set mySt(nxSt) = Worksheets(i)
上記例で、非表示5シート、表示5シートであるにもかかわらずSt_noに
1,2,4,6を指定した場合の6は無視されて1,2,4番目の表示シートが格納されます。
■VBAコード
Sub sample()
Dim mySt() As String, St_no() As Variant
Dim i As Integer, cnt As Integer, nxSt As Integer
'配列へ格納するシートの番号を指定
St_no = Array(1, 2, 4)
For i = 1 To Worksheets.Count
If Worksheets(i).Visible Then
cnt = cnt + 1
If St_no(nxSt) = cnt Then
ReDim Preserve mySt(nxSt + 1)
mySt(nxSt) = Worksheets(i).Name
nxSt = nxSt + 1
End If
End If
If UBound(St_no) < nxSt Then Exit For
Next i
ReDim Preserve mySt(nxSt - 1)
'格納された配列を表示
For i = 0 To UBound(mySt)
Debug.Print mySt(i)
Next i
End Sub
No.1
- 回答日時:
こんばんは!
Sub Sample1()
Dim k As Long, wS As Worksheet
For k = 1 To Worksheets.Count
If Worksheets(k).Visible = True Then
Set wS = Worksheets(k)
Exit For
End If
Next k
End Sub
※ これで k 番目のSheetが wS という変数に格納されます。
こんな感じをご希望だったのでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ExcelのVBAコードについて教えてください。 1 2022/06/17 15:40
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/06/19 10:08
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 3 2022/06/10 09:24
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Visual Basic(VBA) 複数指定セルの可視セルのみを別シートに転記するVBAについて 2 2022/05/27 21:19
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
このQ&Aを見た人はこんなQ&Aも見ています
-
風水の観点で選ぶ観葉植物とは?置き場所や上げたい運気ごとの注意点を紹介!
観葉植物で運気をアップするコツを、風水デザイン1級建築士の福島昌彦さんに伺った。
-
エクセル・マクロ シートの非表示でマクロのエラー
Visual Basic(VBA)
-
エクセルでエラーが出て困っています。
Excel(エクセル)
-
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
-
4
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
5
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
6
VBA ソートすると、1、11、2,3になって・・
Excel(エクセル)
-
7
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
8
ExcelVBA 改ページの横破線を消す方法
Excel(エクセル)
-
9
エクセルで英数大文字のみの入力制限は可能ですか
Excel(エクセル)
-
10
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
11
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
12
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
13
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
14
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
15
コンボボックス内の文字サイズ変更
Excel(エクセル)
-
16
ExcelVBA Range クラスの PageBreak プロパティを設定できません。
Visual Basic(VBA)
-
17
Excel 条件によって入力禁止にする
Excel(エクセル)
-
18
for each の現在の配列ポインタ VBA
Excel(エクセル)
-
19
バーコードコントロールが印刷時に反映されない
Excel(エクセル)
-
20
VBA、UserFormを前面に出力してから処理後にももう一度前面に出したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
括弧があるとHYPERLINKで飛べな...
-
エクセルで複数のシートをフォ...
-
Excel複数シートから日付と文字...
-
Excel VBA シート名変更時、重...
-
建築模型、カーブの作り方
-
エクセルVBA 4行飛ばしで転記す...
-
水の染み込んだバイクのシート...
-
ct125 ハンターカブ シート ロ...
-
シートベルトの固定解除
-
EXCEL VBA 複数のシートに同じ...
-
原付 レッツシート開け方
-
ジュニアシート ブースターシー...
-
フォルツァ バッテリーを外して...
-
TL125のダブルシート化
-
スバルサンバー助手席シートを...
-
車のシートでおもらし
-
自分はGSX-S125に乗ってますが...
-
BRIDEのシート張り替えってでき...
-
PET(ポリエチレンテレフタレー...
-
市販のラザニアシートを買い、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで複数のシートをフォ...
-
括弧があるとHYPERLINKで飛べな...
-
原付 レッツシート開け方
-
エクセルVBA 4行飛ばしで転記す...
-
シートベルトの固定解除
-
防風目的で使おうと写真の白い...
-
車のシートでおもらし
-
ポケットにミシンでワッペンを...
-
Excel複数シートから日付と文字...
-
リアシート無しで運転してたら...
-
水の染み込んだバイクのシート...
-
Excel VBA シート名変更時、重...
-
電車のシートって何でこんな暑...
-
バイクのシートを取り替えても...
-
フォルツァ バッテリーを外して...
-
ポップコーンの捨て方
-
建築模型、カーブの作り方
-
マグナ250とマグナ50でパーツの...
-
Googleのスプレッドシートでシ...
-
アドレスV125G(K7)の整備に詳...
おすすめ情報