XPのVBAでシート名の一部を変更するマクロを組もうとしています。
山田町(統計)、山田町(1期)、山田町(2期)というファイルを、指定した表の中の各セルの町名に変更して保存します。(全部で40町。たとえば浅野町(統計)、浅野町(1期)、浅野町(2期)というふうに)
今はFor each a in UsedRangeという形でa(統計)、a(1期)、a(2期)という名前で保存するようにしています。
(統計)、(1期)、(2期)の部分を指定しないで、共通する部分(a)だけ変える、というマクロの組み方はないでしょうか。
初心者なもので、うまく説明できないので申し訳ありません。
どなたかよろしくお願いします。
No.2ベストアンサー
- 回答日時:
あまり詳しく状況が見えないのですが、
山田町(統計)、山田町(1期)、山田町(2期) というシート名を
浅野町(統計)、浅野町(1期)、浅野町(2期) に変更するという意味で作成しました。
*注意
1、シート名にある "("(カッコ) は半角であるという前提でマクロを書いていますが、もし全角ならば(1)(2)の部分の "("(半角) を "("(全角)に変更してください。
2、(1)部分の"山田町"の部分には今から変更する名前を、(2)の"浅野町"の部分には変更した後の名前を書いてください。
Sub シート名変更()
Dim s As String
For i = 1 To Sheets.Count
s = Sheets(i).Name
If Left(s, InStr(s, "(") - 1) = "山田町" Then '(1)
Sheets(i).Name = "浅野町" & Mid(s, InStr(s, "(")) '(2)
End If
Next
End Sub
No.4
- 回答日時:
質問の意味がわかりません。
>初心者なもので、ではなく、文章表現の訓練と考え方の整理が不十分だと思う。>シート名の一部を変更する
シート名の文字列は、変更後の文字列全体を指定します。
ブック名でも同じです。
その文字列の一部(後半?)を作るときに、セルの値を検索して適当に持ってくる分けです。通常は&で2つの文字列を(固定部分と変動部分を)結合します。
質問には統計、1期、2期を適切に振るロジックが書いてないのではないですか。もしそうならプログラムを聞かれても答えられません。
ーーー
>)、山田町(2期)というファイルーー>ブックの話
>シート名の一部を変更する方ーー>シートの話
一体どちらですか。
どうも推測では、名前の変更はブック名の方か?
すると表題の>シート名の一部を変更する方法について、はブック名の一部をシートのセルのデータで変更する方法について
という質問ですか?
どういうタイミングで>統計、1期、2期を振るのか、切めりしないとだめです。
> UsedRange
にはどんなデータがあるのか実例を挙げること。
ありがとうございます。成程、思いついたまま質問を乗せてしまいました。(山田町(統計)、山田町(1期)、山田町(2期))(浅野町(統計)、浅野町(1期)、浅野町(2期))(大分町(統計)(大分町(1期)、大分町(2期))というふうにしたかったのです。思いつめると、そのまま文章にする傾向があるので、反省しています。今回はどうやら解決しました。本当にご忠告ありがとうございました。
No.3
- 回答日時:
>山田町(統計)、山田町(1期)、山田町(2期)というファイルを、指定した表の中の各セルの町名に変更して保存します。
これはマスターブックがあってそのシート名が、
>a(統計)、a(1期)、a(2期)
である時に、表中の町名(山田町、浅野町・・・)毎にブックを作成・3つのシートをコピペ、
そのシート名を a から各町名に変更・保存したいと言う感じの事でしょうか?
読み違いでしたらごめんなさい。
ありがとうございます。おっしゃるとおりです。説明不足で、おまけにお礼が遅くなり申し訳ありません。とりあえず今回は完成しました。ご
迷惑をおかけしました。
No.1
- 回答日時:
ご質問の意味をよく理解できてませんが…
現状は『指定したシート』で、それぞれ
浅野町(統計)、 浅野町(1期)、 浅野町(2期)・・・
と指定しているのを、
浅野町、 山田町、 ・・・
みたいにできないかという意味でしょうか?
もしそうであるなら、
シートから a="浅野町"を取得したら、保存する際に
a & "(統計)"、 a & "(1期)"、 a & " (2期)" の3種類のファイルをセットで作成(=保存)するようにすれば良いだけでは?
意味が違っていたなら、無視してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/20 16:37
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/11 13:29
- Access(アクセス) ExcelのVBAコードについて教えてください。 4 2023/01/20 09:44
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
フォルダ内の全ブックのシート名を変更したいです。
Excel(エクセル)
-
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
-
4
ファイル名の一部削除について
XML
-
5
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
6
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
7
エクセルでエラーが出て困っています。
Excel(エクセル)
-
8
VBA 数式を残して値をクリアについて
Excel(エクセル)
-
9
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
10
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
11
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
12
【EXCEL】【VBA】空欄は飛ばして処理する方法を教えて下さい。
Excel(エクセル)
-
13
Rangeメソッドは失敗しました。globalオブジェクトについて
Excel(エクセル)
-
14
VBA シート名が一致した場合の転記内容について
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
Excel マクロについての相談
-
別のシートを参照して計算する方法
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
VBA 最終行まで数式をコピーする
-
【ExcelVBA】全シートのセルの...
-
特定の文字を含むシートだけマ...
-
エクセルのマクロについて教え...
-
VBA 入力月で該当シートを選択...
-
一括印刷マクロ シート名を数字...
-
【ExcelVBA】動的にボタン、ボ...
-
VBA 存在しないシートを選...
-
同じ作業を複数のシートに実行...
-
ListViewの画面の更新
-
実行時エラー1004「Select メソ...
-
シートが保護されている状態で...
-
エクセルで通し番号を入れてチ...
-
【VBA】指定した検索条件に一致...
-
ユーザーフォームに入力したデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
XL:BeforeDoubleClickが動かない
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報