- ベストアンサー
シート見出し名の下2桁を ”必ず ” 連番 かつ 12の倍数にするには?
基本は、シート見出し名の 下2桁だけが、 連番 かつ 12の倍数で、 昇順になっていますが、 ”たまに” 一部シートが抜けている ( ない ) 時がありますので、 マクロ実行後に、 きちんと 合計 12枚 or 24枚 or 36枚 にしたいのです。 抜けている ( ない ) 場合、 抜けているシート数は、多くても 4・5枚 です ( 抜けているシートの場所は変動します )。 3通り のマクロが必要のように思いますが、下記例の 1通り をどうかご教授下さいませ。 ----------------------------- '下記例は、 抜けているシート 4番目 と 最終の36番目 を挿入し、シート数を 合計36 にしたい場合の例です。 'この場合、マクロ実行前は シート数36 を超えることはありません。 '「 **01 ~ **12 」 は、必ず昇順になっています。 ブック1( 実行前シート数 合計34 ) シート見出し **01 **02 **03 **05 **06 ・・ **12 **01 ・・ **12 **01 ・・ **11 ↓↓↓↓ ブック1( 実行後シート数 合計36 ) シート見出し **01 **02 **03 挿入したシート1 **05 **06 ・・ **12 **01 ・・ **12 **01 ・・ **11 挿入したシート2
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- zap35
- ベストアンサー率44% (1383/3079)
- nicotinism
- ベストアンサー率70% (1019/1452)
関連するQ&A
- A列の下2桁だけが連番でなかったら1行だけを挿入するマクロは?
基本は、A列の下2桁 ( 各連番が複数ずつあります ) だけが連番になっているんですが、 "たまに" 抜けている ( ない ) 時がありますので、 マクロ実行後に、連番が抜けている ( ない ) 場合に、そこに 「 1行だけ を挿入 」 して、 かつ その行のFS列 ( 175列目 ) まで ハイフン 「 - 」 を入力したいんです。 そして、必ずデータエリア数を 12 or 24 or 36 にしたいんです ( マクロ実行前は 36 を超えることはありません )。 連番が抜けている ( ない ) 場合、多くても 4・5つのデータエリア です。 3通り のマクロが必要のように思いますが、下記例の 1通り をどうかご教授下さいませ。 ---------------------------- **01 が 約10~19行 ( 変動します ) まであります ( これを エリア数1 と表現させて頂きます )。 そして、他の 「 **02 ~ **12 」 も同様です。これで 合計エリア数12 となります。 「 **01 ~ **12 」 は、必ず昇順になっています。 下記例は、 エリア数を 実行後 24 にしたい場合の例です ( この場合、実行前は 24 を越えることはありません )。 「 最初の **01 ~ **12 」 のうち 「 **02 」 と 「 **12 」 が抜けている ( ない ) 場合です。 実行前 ( エリア数22 です。「 **02 」 と 「 **12 」 が抜けている ( ない ) ) A列 **01 ・ **01 **03 ・ **03 ・ **11 ・ **11 **01 ・ **01 **02 ・ **12 **12 ↓↓↓ 実行後 ( 挿入した2行を エリア数2 としまして、 合計エリア数24 となります ) A列 B列 ・ ・ FS列 **01 ・ **01 - - ・ ・ - **03 ・ **03 ・ **11 ・ **11 - - ・ ・ - **01 ・ **01 **02 ・ **12 **12
- ベストアンサー
- オフィス系ソフト
- 【Excel VBA】シート見出しの色を変更する
Excel2003を使用しています。 シート数が10数枚のBookが複数あり、これらのBookで、シートのデータが変更されたら、シート見出しに色を付けるマクロを作りたく、とりあえず、マクロの記録をとってみました。 マクロの記録で、シート見出しの色を変更するコードや複数のシートを選択するコードはわかりましたが、実際にしたいことは、シート名が4桁の数値のシートにだけ、このマクロが実行されるようにしたいのです。このようなことは可能でしょうか?可能であれば、どのようにコードを記述すればいいでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excel2003で桁名行名シート見出しが非表示に
表題のとおりなんですが… 先ほどから急にあるブックだけ桁名、行名、シート見出しの部分が非表示になりました。 オプションの[表示タブ]を確認しても「行列番号(E)」、「シート見出し(B)」のチェックボックスはチェックされています。 チェックをはずしてExcel再起動、チェック入れてみましたが状況が変わりません。 ほかのブックでは桁名、行名、シート見出しともに表示されています。 とても困っています、よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- マクロでのシートの連番について
WindowsXP EXCELL2003 いつも御世話になります。 「マクロ実行」でシートの追加はすでに下記でご指導いただきました。 http://oshiete1.goo.ne.jp/qa5351508.html ご指導を仰ぎたいのは、 「納請書」が現在 1~3 迄は作成しています。 例えば 下記マクロを実行して このシート(納請書)を順次追加した時に シート名が「納請書4」「納請書5」「納請書6」と表示することは可能でしょうか Sub シートの追加() Sheets("納請書3").Copy Before:=Sheets("月請求書") ActiveSheet.Name = "納請書" & Worksheets.Count End Sub このマクロで実行すると「納請書10」からはじまります。 現在、シート数は 9シートを使用している結果だと思います。 もし可能ならば、 ご指導よろしく御願いしくます。
- ベストアンサー
- オフィス系ソフト
- Excelマクロ:複数シート同座標セルの値を、連番で一覧に参照したい
マクロは素人なのでご教授お願いします。 Excelブック一つにシートが20あったとします。 ○20シート全ての同座標セルに、ある商品の「合計」と「個数」の値がある ○「集計」シートが別にあり、「sheet1」から「sheet20」までを連番で一覧にしてある 該当のセルに「合計」と「個数」の値を参照させる <「集計」シート 結果例> A B C 1 シート名 合計数 個数(表見出し) 2 sheet1 78 5 3 sheet2 90 17 4 sheet3 112 224 また、以前まったくの逆の条件で質問をしまして、良回答いただきました。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=715150 参考までにご覧になってみて下さい。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- シート名について教えて下さい
例えば・・・・マクロを実行すれば、 (1)エクセルブックの 沢山あるシートの一番前に、『シート名一覧』のシートを追加 (2)『シート名一覧』シートのA列に、全シート名を表示 A 1 シート名一覧 2 源語 3 文章作り 4 単語帳 5 担当 6 : 7 : (3)『シート名一覧』シートのA1から、シート名と連動(順番に) (4)例えば、A4『単語帳』を『四文字熟語』に変えると、最初から4番目のシート名が連動して変わる そのようなマクロを どうか教えて下さい! 宜しくお願いします。
- ベストアンサー
- Windows Vista
- 「ワークシート見出しの順番」 を希望順に並び替えるマクロは ?
エクセル 2002 です。 シートの数は、必ず 36 以下です。 下記例は、 1、「 頭の AK 」 は 必ず、全部同じです。 2、「 数字部分の2桁 」 は、必ず、 1 ~ 10 です。 3、「 * 」 は、必ず、6 桁 です。 4、たとえば下記例の 「 AK01****** 」 は、 「 AK01****** だけの見出し全部 ( 01 だけが全く同じのデータが必ず続いてます) 」 を 「 01 の エリア 」 と 表現させて頂ます。 5、この エリア は 必ず、2つ か 3つ です。( 下記例では、エリア は 3つ です) この エリア順 を 「 InputBox を使い 」 希望順に並び替えたいのです。 何卒、ご教授くださいませ。 ----------------- Sub 見出し並び替え() Dim sort_key As String Dim sDataArray As Variant Dim i As Long Dim j As Long sort_key = InputBox("ソートキーを入力してください" & vbCrLf & "10,04,01 のような感じで入力してください") ・ ・ End Sub ---例---------------------------------------------- ブック1( エリア順が 01、04、10 です ) シート見出し AK01****** AK01****** ・・ AK01****** AK04****** ・・ AK04****** AK10****** ・・ AK10****** ブック1( エリア順を 10、04、01 にしたいです ) シート見出し AK10****** AK10****** ・・ AK10****** AK04****** ・・ AK04****** AK01****** ・・ AK01******
- 締切済み
- オフィス系ソフト
- Excel 2010 シート名が表示されません。
オプションから詳細設定と進み、 次のbookで作業するときの表示 シート見出しを表示するにレ点が入っているが 表示されません。 なお、本bookにはマクロを組み込んでいます。 マクロが邪魔しているのでしょうか? 他のbook は表示されます。 よろしくお願いします。 ※OKWaveより補足:「富士通FMV」についての質問です。
- ベストアンサー
- その他MS Office製品
- 【VBA】シート名をセルに入力すると、そのシートのコピーを実行させるには?
【条件】 1.仮に「合計」というシートに、追加されるシートのあるデータをコピーしたい。 2.別シートに一定のフォームの集計データが入っているので、このシート名を変更して「A」という名前に変更する。そして、「合計」の入っているブックに移動する。 3.「合計」のA1のセルに「A」という入力をしマクロを実行すれば、「A」のシートの一定のRangeから、合計の任意の場所にコピーをするマクロをつくりたい。 4.このフォームは年間同じフォームで20回発生するがそのたびに、同じような作業が必要となります。 (シートにコピーする作業は、やめて、ブックの別ファイルのあるシートから、ある一定のRangeをコピー元として、「合計」にコピーするでも問題ないです)。 If ~ Elseif ~、myRange = A1で作っても、そのmyRange = A, Elseif = B、と延々につくらなければならない(=たぶんこれは原始的なのだと自認しています)のがはがゆく、 シート名が”文字列(または数字)”の場合、その”文字列(または数字)”をもつ、ブックまたはシートから、コピーを実行というコードをつくりたいのです。 よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- 同ブック内でシートを追加したときにシート名と連番が
WindowsXP EXCELL2003 いつも御世話になります。 何とか自分で作りたく色々調べてトライしましたが分からなくなりご教授を願う事になりよろしく御願いします。 仰ぎたいのは 納品書と請求書が一緒になった ・シート名「納請書1」、 がA4で1枚になったシートがあります。 とりあえずこの納請書なるものは3シート用意しています。 受注が追加されるごとに「納請書3」のシートコピーをして「納請書4」その都度追加します。 これをマクロの実行とか何かの方法で追加することは可能でしょうか。 もし可能ならばいい方法をご指導いただけませんでしょうか。 取り合えず1例で下記のマクロを Sub シートの追加とプロパティ操作() Dim NewWS As Worksheet Set NewWS = Worksheets.Add(After:=Worksheets("納請書3")) With NewWS .Name = "納請書4" .Columns.ColumnWidth = 20 End With End Sub このやり方は私か調べた物でトンチンカンかも知りません。 「マクロの実行」 Sheet3シートの追加とプロパティ操作 で「実行」すると次のように出ます。 「インデックスが有効範囲にありません」
- ベストアンサー
- オフィス系ソフト
お礼
誠に有難うございました。 >のようなシート構成を想定しています。 zap35様の想定の通りでございます。 プリフィックスまでは、自身の希望以上でした。