• 締切済み

エクセル2003 1000行の表の30行ごとに挿入

1000行の表の30行ごとに小計行を入れたいのです。 マクロが全く出来ない場合は、手入力していくしかないでしょうか。

みんなの回答

  • dogs_cats
  • ベストアンサー率38% (278/717)
回答No.5

表のレイアウトを記載するのがエクセルの質問をする際のルールだと思って下さい。 どの列の何行目からデータが開始するという情報がとても重要です。 ダミーデータを本分又は画像添付する事を心がけて下さい。 質問内容が抽象的なので、下記条件としました。 関数で処理する関係上、別の列にデータを抽出する事とする。 1.A列のデータをC列に31行毎に「小計」の文字を入力する。 2.B列の数値データをD列に31行毎に30行データの小計値を入力 C1式 =IF(MOD(ROW(A1),31)=0,"小計",INDIRECT("A"&ROW(A1)-INT(ROW(A1)/31))) D1式 =IF(MOD(ROW(A1),31)=0,SUM(OFFSET(INDIRECT(ADDRESS(ROW(A1)-1,COLUMN())),,,-30,)),INDIRECT("B"&ROW(A1)-INT(ROW(A1)/31))) INDIRECT("A"&ROW(A1)の"A"はA列をしめしています。"B"はB列 31は31行目毎 -30が小計1つ前のセルから30行前までを集計する指定値 添付画像は30行分では数値判読出来ないので、6行毎の小計となっています。 関数の意味はネットで調べて下さい。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.4

こんにちは 8、を修正します。 8、A31をコピーしてから、A32:A1033を選択しCtrl+Fで空白セルをすべて検索し 検索されたセルアドレスの先頭から最終までShifyキーを押して全部選択し 検索ボックスを閉じて、空白セルが全て選択された状態でCtrl+Vで貼り付ける。 9、A1034には手動でSUMを設定する。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.3

こんにちは A1~A1000までデータが入っているとして、 1、B1に=MOD(ROW(A1),30)と入れて、B1セルの右下角のフィルハンドルを   ダブルクリックするとB1000まで数式が入ります。 2、B1:B1000をコピーしB1に値で貼り付けします。 3、B1からB1000までを選択して、Ctrl+Fで「1」を検索します。   検索オプションでセル内容が完全に同一であるものを検索とします。 4、すべて検索を実行して検索されたセルアドレスをShiftキーを押して先頭から最終セルまで  選択します。 5、メニューの挿入でシートの行の挿入を実行します。 6、B列を選択してDeleteキーでクリアします。 7、A31を選択しΣボタンで「SUM」を入力する。 8、A31をコピーしてから、Ctrl+↓、 ↓ 、 で空白セルを検索しCtrl+Vで貼り付けるを繰り返す。 とかで、どうでしょうか?

noname#228894
noname#228894
回答No.2

その「マクロが全く出来ない場合」ってのが会社とかで禁じられているためであれば、手仕事でひたすら頑張るしかありません。ただ修行じゃありませんので、少しでも楽にやれる方法を考えてもよいでしょう。ここでは一発で30行移動できるようにする方法を教えます。 非常に簡単、「何だよそんな単純なことかよ」と言われそうな方法です。Excelのウィンドウの縦サイズをマウスで調節して、30行だけ表示される大きさにします。これは完璧に30行ぴったりでなくても平気で、多少はみ出して31行目が顔を出してる程度でも構いません。こうしておいてPageUp/PageDownキーを押すと、30行ずつ移動するようになるので、いちいち数えてカーソルキーを押す必要がなくなります。 もし画面の解像度が足りなくて、画面を上下いっぱいに使っても30行表示できない時は、Excelの方でズームを使って縮小してください。ショートカットキー、[Alt]→[V]→[Z]の順に操作すればズーム設定が出るんで、75%か50%にすれば表示できると思います。なおズームの設定はファイルに保存されるため、縮小したままセーブすると次に開いた時にも縮小が再現されます。それだと都合が悪い場合は(まあ普通はそうでしょうけど)セーブ前にズーム設定を元に戻してください。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 例えばその列の2行目に「その列の項目名」が入力されていて、最初に「小計」と入力したいセルがその列の32行目のセルである場合には、次の様にされると良いと思います。  まず32行目のセルに次の関数を入力して下さい。 =IF(MOD(ROWS($3:32),30),"","小計")  次に、32行目のセルをコピーして、同じ列の33~1000行目のセル範囲に貼り付けて下さい。  次に、その列全体をコピーして、同じくその列全体に「値のみ」を貼り付けて下さい。  以上です。  それから別のやり方としては、まず32行目のセルに「小計」と入力して下さい。  次に、Excelのウィンドウの左上の辺りにある「名前ボックス」(選択されているセルのセル番号が表示されているボックス)に 3:32 と入力して下さい。  すると3:32の行範囲が選択されますので、そのままの状態で[Ctrl]キーを押しながら[C]キーを押して3:32の行範囲をコピーして下さい。  次に、名前ボックスに 33:33 と入力して33行目を選択してから、そのままの状態で[Ctrl]キーを押しながら[V]キーを押して33:62の行範囲に対して貼り付けを行って下さい。  次に、名前ボックスに 3:62 と入力して3:62を選択後、同様のやり方で選択範囲をコピーして、63行目以下に貼り付けて下さい。  同様に3:122の行範囲をコピーして、123行目、243行目、363行目、483行目、603行目、723行目、843行目、963行目にそれぞれ貼り付けて下さい。  以上です。

関連するQ&A