Excel VBAで、複数のシートのセルの列幅を一度に変更する方法は??
Excel VBAに関する質問です。
ある統計表(のようなもの)から特定の数字を抜き出し、同じファイル内の別シートに反映させる作業を一部効率化できないかと試みています。
For~Nextの構文を使って、複数のシートを作成するところまではできたのですが、その後の列幅の調整がよくわからず困っています。
列の幅については下記のような感じかなと思っているのですが、
実行しても一つのシートにしか、結果がでず(全てのシートが
選択はされるのですが)他のシートの列幅が変わりません。。。
Sub 複数シートの選択()
WorkSheets.select
Columns("B:C").ColumnWidth = 15
Columns("E:H").ColumnWidth = 20
End Sub
この処理の前にシートの作成をするようにしているので、
全てのシートではなく、そのときに作成したシートのみにかかる
方法でも問題ないのですが、その方法だとうまくいくのでしょうか?
まだかなり勉強中の段階で、初歩的なことでしたら大変申しわけないのですが、上記で修正すべき点や参考になるサイトを教えていただければと思います。
For~Nextでやるのかも?と思うのですが、この構文が理解しきれておらず、自分でまったく思いつきません・・・
基本にも満たない内容で申し訳ありません。
情けない話なのですが、ご教授頂けると幸いです。
No.1ベストアンサー
- 回答日時:
これではどうでしょうか。
Sub 複数シートの選択()
For i = 1 To Worksheets.Count
With Worksheets(i)
.Select
Columns("B:C").ColumnWidth = 15
Columns("E:H").ColumnWidth = 20
End With
Next
End Sub
nknk80様
回答ありがとうございました。おかげさまでおっしゃるとおりにしてみたところうまく出来ました。処理の回数を現在のシートの数、としてやれば良いんですね。勉強になりました。
遅い時間にも関わらず、すばやいご回答くださったこと感謝します。
ありがとうございました!!!
No.2
- 回答日時:
実験の結果、確かに
Sheets.SelectまたはWorksheets.Selectの後に
Columns("B:C").ColumnsWidth=10としても全てのシートには適用されませんでしたが、
Columns("B:C").Select
Selection.ColumnsWidht=10
とすると全てのシートで列幅が適用されました。
前者では、複数シートが選択されていてもColumnsWidthはアクティブシートにのみ適用になりますが
後者は選択された範囲に対して処理するため全体へ適用されるのだと思います。
Masa2072様、ご回答ありがとうございました。検証までしていただいて、ご丁寧な対応ありがとうございます。
おっしゃるとおりにしてみたところ、確かに全てのシートにちゃんと列幅調整がかかりました。最初にシートを選択してやれば出来るのかなと思い、Masa2072様のいうような方法は思いつかなかったです。
出来るだけ自分でもこの件については調べたつもりだったのですが、
お手上げ状態だったので回答頂き助かりました。
ありがとうございました!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数シートの複数列に入力されているデータを重複なしで抽出するVBAを作りたいです。 9 2022/06/17 10:33
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) セルの値からファイルを複数作りたい2 3 2022/10/07 15:54
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Excel(エクセル) シートが違う2枚のエクセルシートにある数値を別シートにコピーしたい(VBA?) 8 2022/03/31 12:24
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
このQ&Aを見た人はこんなQ&Aも見ています
-
10代と話して驚いたこと
先日10代の知り合いと話した際、フロッピーディスクの実物を見たことがない、と言われて驚きました。今後もこういうことが増えてくるのかと思うと不思議な気持ちです。
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
遅刻の「言い訳」選手権
よく遅刻してしまうんです…… 「電車が遅延してしまい遅れました」 「歯医者さんが長引いて、、、」 「病院が混んでいて」 などなどみなさんがこれまで使ってきた遅刻の言い訳がたくさんあるのではないでしょうか?
-
2024年のうちにやっておきたいこと、ここで宣言しませんか?
2024年も残すところ50日を切りましたね。 ことしはどんな1年でしたか? 2024年のうちにやっておきたいこと、 よかったらここで宣言していってください!
-
とっておきの「まかない飯」を教えて下さい!
飲食店で働く方だけが食べられる、とっておきの「まかない飯」。 働いてらっしゃる方がSNSなどにアップしているのを見ると、表のメニューには出てこない秘密感もあって、「食べたい!!」と毎回思ってしまいます。
-
Excel の複数シートの列幅を同じにするには?
Excel(エクセル)
-
複数シートの列、幅の一括変更方法
経営情報システム
-
【VBA】複数のシートの指定した列を非表示・表示をさせたい
Excel(エクセル)
-
-
4
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
5
同じ作業を複数のシートに実行させるにはどうしたらいいのでしょうか
Visual Basic(VBA)
-
6
マクロ 実行ボタンを押さずに常に実行
Excel(エクセル)
-
7
マクロ オートフィルタの検索値を所定のセルから参照
Excel(エクセル)
-
8
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
-
9
エクセルのフィルターを複数シートに連動させたいです。 エクセルファイルに15シートあります。 そのう
Excel(エクセル)
-
10
Excel VBA について(列幅)
Visual Basic(VBA)
-
11
エクセルVBA 作業後に選択範囲を解除する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでブック内の倍率がバ...
-
EXCELで複数のシートを一度に「...
-
ハイパーリンクでジャンプした...
-
アクセスからエクセルのシート...
-
エクセルを開くとメニューバー...
-
accessへエクセルの複数のシー...
-
エクセル、別のシートの表をポ...
-
エクセルのシー名を二段表示に...
-
EXCELの「シートの見出し」のフ...
-
Accessのテーブルを既存のExcel...
-
EXCELの図形(テキストボックス)...
-
特定のシートのみ再計算させな...
-
エクセル、特定のシートにパス...
-
エクセルで複数のシートに画像...
-
ワークシートそのものの色を変...
-
エクセル シート毎 連続で曜日...
-
【Excel VBA】データ貼り付け先...
-
Access VBAからExcelシートの削除
-
指定したシート名以外を非表示...
-
エクセル 非表示のシートをハ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで複数のシートを一度に「...
-
エクセルでブック内の倍率がバ...
-
ハイパーリンクでジャンプした...
-
特定のシートのみ再計算させな...
-
エクセルで複数のシートに画像...
-
【ExcelVBA】マクロの入ったシ...
-
EXCELの図形(テキストボックス)...
-
エクセルのシー名を二段表示に...
-
エクセルのシート連番の振り直し
-
ワークシートそのものの色を変...
-
EXCELの「シートの見出し」のフ...
-
Accessのテーブルを既存のExcel...
-
Wordで差し込み印刷時に表示す...
-
エクセル、特定のシートにパス...
-
EXCELで存在しないシート...
-
エクセルの2つのシートを並び...
-
アクセスからエクセルのシート...
-
指定したシート名以外を非表示...
-
エクセル、別のシートの表をポ...
-
エクセルで誤ってF11キーを押す...
おすすめ情報