
Excel VBAである特定文字列を含むシート名例えば「りんご(1)」「みかん(1)」「みかん(2)」「いちご(1)」のシート名があるファイルに対して「みかん*」で検索を行い、一致したシート(複数Sheet)=「みかん(1)」「みかん(2)」に対して処理を行う方法はありますでしょうか。
宜しくお願いいたします。
完全一致するファイルは下記のようなのですが、Scheck = 0の部分が理解でいません。
型は何にすればよいのでしょうか。
Sub Sheet_Add5()
Scheck = 0
For Each sheet_name In Worksheets
If sheet_name.Name = ("検索シート名") Then
Scheck = 1
Exit For
End If
Next
If Scheck = 0 Then
Sheets.Add.Name = "検索シート名"
End If
End Sub
No.4ベストアンサー
- 回答日時:
for each s in worksheets
if s.name like "みかん*" then
'do みかん*
elseif s.name = "りんご" then
'do りんご
else
'do any other
end if
next
のように。
#みかん1,みかん2,もしかしたらみかん3ぐらいまでに限定できますという話であるなら
select case s.name
case "みかん1" to "みかん9"
msgbox "みかんs"
case "りんご"
msgbox "りんご"
case else
end select
のようにもできます。
早速のお返事ありがとうございました。
「みかん」シートをコピーすると「みかん(1)」「みかん(2)」とかになりますよね。
今回はそういった形で運用されるシートに対してのみ処理をしたかったので、()をつけた場合どうも上手くいきませんでした。
色々試すうちに下記のやり方でなんとか行けそうという方法がわかりました。
今回も色々勉強させていただきました。
ありがとうございました。
Sub SelectCaseステートメントで○○を含むの書き方()
Dim msg As Variant
For Each myWS In Worksheets
msg = myWS.Name
Select Case True
Case msg Like "みかん*"
myWS.Activate
Case msg Like "Sheet1"
Range("a1").Select
Case msg Like "りんご*"
Range("b6").Select
Case Else
Range("c11").Select
End Select
Next
End Sub
No.3
- 回答日時:
今のマクロでそこにExit Forを置いてしまったら最初のりんごで脱出してしまい,次以降のりんごがもう出来ません。
sub macro1()
dim s as worksheet
for each s in worksheets
if s.name like "りんご*" then
s.activate
msgbox s.name
end if
next
end sub
この回答への補足
すみません
その該当するシートのみ2・3枚(=みかん1・みかん2シートなど)に対してのみ処理をしたいので
Sub シートチェックcase使用()
For Each myWS In Worksheets
select Case myWS.Name
Case "みかん*"
myWS.Activate
Case "Sheet1"
Range("a1").Select
Case "りんご"
Range("b6").Select
Case Else
Range("c11").Select
End Select
Next
End Sub
こんな感じかと思いついたのですが、Case "みかん*" 部分の「みかん」を含むシートにヒットしません。
どのように記述すれば「みかん」を含むシートのみを対象にできるのでしょうか
お手数ですが、ご教授をお願い致します。
No.2
- 回答日時:
>If Scheck = 0 Then
>Sheets.Add.Name = "検索シート名"
>End If
Scheckにはシート検索の判定結果が入ってます。
0初期値、見つかったときのみ1、見つからなかったら0(のまま)
If Scheck = 0 Then
見つからなかったときの処理
else
見つかったときの処理
End If
No.1
- 回答日時:
Scheck の形を何にするかの質問に対しては、
"検索シート名" が有るか無いかのスイッチですので、
integer で良いと思います。
「みかん*」で検索を行うのは、
If left(sheet_name.Name,3) = ("みかん") Then
で良いと思います。
外していたらごめん
ではでは。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Visual Basic(VBA) 集計シートA列のコードと一致する右に並んだシート名(コード)の3行目から10行目をコピーして貼り付け 4 2022/08/18 15:24
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Visual Basic(VBA) 以前シートを集めて1シートへ繋げる下記コードをご教授いただき作成しました。 今回すでに集めてある「ま 1 2022/08/29 20:38
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
このQ&Aを見た人はこんなQ&Aも見ています
-
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
-
【VBA】シート名に特定文字が入っていたらマクロを実行したいです。
Visual Basic(VBA)
-
特定の文字を含むシートを選択するには
Visual Basic(VBA)
-
-
4
特定のシート名のシートのみ除外して、それ以外のシート名のシートをすべて集約する方法(VBA)
Excel(エクセル)
-
5
特定の文字があるシート名を選んでシート名を変更したい(VBA)
Excel(エクセル)
-
6
VBAで条件が一致する行をコピーしその1つ下へ挿入
Excel(エクセル)
-
7
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
8
EXCEL ページを指定してPDF出力するVBAを教えてください。
PDF
-
9
VBAでの結合セルのコピー&ペースト
Excel(エクセル)
-
10
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
11
InputBoxに入力した言葉をシート名にしたい!
Excel(エクセル)
-
12
VBAでシートコピー後、シート名が重複している時の処理
Access(アクセス)
-
13
エクセルマクロでシート名を条件にする方法
Excel(エクセル)
-
14
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
15
ピボットテーブルでの毎回可変するデータの最終行までの範囲を指定したいです。
PowerPoint(パワーポイント)
-
16
指定したシート名以外を非表示にするには?VBA
Excel(エクセル)
-
17
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
18
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
19
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
20
Excel VBA ピボットテーブルにて、 最終行の取得の仕方を教えてください
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
煮物こんにゃくの冷凍保存について
-
7文字以上のフルーツをできるだ...
-
スポンジケーキってどのくらい...
-
中黒「・」か読点「、」か?
-
10年前のにんにく漬け、食べて...
-
さくらんぼに似ているが、さく...
-
しらたきと吐き気
-
ライム(果物)を漢字になおす...
-
「であり」と「であって」の使...
-
スーパーで買った1つ300円の梨...
-
EXCELでB1に指定文字が入った場...
-
Excel MATCH関数で検索範囲内...
-
筍の上の部分が緑色になってい...
-
ラズベリーの種の抜き方を教え...
-
デコポンの漢字よ由来
-
イチゴのケーキを作りたいんで...
-
梶井基次郎の檸檬
-
業務スーパーのソーセージ。肉...
-
いちごを1パック買ったのです...
-
プルーンの種
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
煮物こんにゃくの冷凍保存について
-
7文字以上のフルーツをできるだ...
-
スポンジケーキってどのくらい...
-
中黒「・」か読点「、」か?
-
10年前のにんにく漬け、食べて...
-
「であり」と「であって」の使...
-
Excel MATCH関数で検索範囲内...
-
スーパーで買った1つ300円の梨...
-
ライム(果物)を漢字になおす...
-
いちごを1パック買ったのです...
-
EXCELでB1に指定文字が入った場...
-
筍の上の部分が緑色になってい...
-
北海道では、見かけないもの
-
ラズベリーの種の抜き方を教え...
-
しらたきと吐き気
-
エクセルで数字を入力したら文...
-
外はふわふわで(柔らかい)、...
-
ローリエって何のために入れる...
-
教えてください!!
-
離乳食にローリエ
おすすめ情報