• 締切済み

表作成でマクロなのかプログラムなのかおしえてください

エクセルでの集計で困っています。上から通し番号が振ってある列があり、その通し番号の横の列のセルには、0ないし0以外の数字がランダムに記入されています。そのセルの数字が0以外の場合、その横の通し番号消去したいのですが、どうしたらいいか分かりません。今はいちいち ひとつずつ消しています。マクロなんですかね、関数?、このパターンがたくさんあって困っています。サルにも分かるなんかいい方法がありませんか、PCの達人教えてください。宜しくお願いいたします。

みんなの回答

noname#40742
noname#40742
回答No.2

一番上の行に任意の文字を書いてください。 データのひとつのセルがハイライトした状態で データ>フィルタ>オートフィルタ を実行してください。 ここで念のために保存してください。 ▼マークが現れるので、クリックして (オプション)を選択します。 左窓 0 を選択。 右窓 と等しくない を選択します。 OKすると、 その列の0以外の行が表示されるので 削除する範囲を全選択(ハイライト)して DELETE キーをおします。 再び、▼マークをクリックして(すべて)を 選べば、お望みの通りとなっています。

tasukarima
質問者

お礼

有難うございました。助かりました。早速やってみました OKでした 基本をいい加減に積み重ねてきたものですから いざとゆうときにパニックになります。お礼が遅れましたが、ほんとうにありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • miu_chan
  • ベストアンサー率51% (438/853)
回答No.1

通し番号を列A、 ランダムに数字が入ってるのが列B ...とします。 行番号を取得する関数がROW関数なので、 これをifの分岐で分けます。 例えばセルA1の数式: =if(b1=0,row(),"") 「もしb1が0なら、行番号を表示し、そうじゃないなら""を表示します」 という感じです。 どこかのセルに適当に「=row()」と入力してみると、 row関数がどんなふうに動くものか、お試し頂けます。 ""ですが、"と"で挟んだ文字をテキストベースで表示させる機能なので、 この中に文字を挟む(例えば"もじ")と、もじ と表示される仕組みで 間に何も挟まなければ、スペースが入れられたような感じになるわけです。 列1とか2とかに表のタイトルや見出しが入る場合は、 関数の中のrow()をrow()+1 とかにすればOKです。 式を入力したセルを選択し、 セルの右下に+マーク(白抜きじゃないやつ)がでる状態にして、 そのままドラッグ&ドロップすれば、下の行にも適用できます。 私も初心者なので、本当はもっと楽な方式があるのかもしれません。

tasukarima
質問者

お礼

お忙しいところ、有難うございました。助かりました。 いま早速取り掛かっています。きっとこれからもエクセルのこと パニックになることがあるとおもわれますので、又、かくのごときには お助けられますように、宜しくお願いいたします。お礼まで

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 作成の表の値を別シートに移したい

    Sheet1に画像の表にあるように、Sheet1のC列のA+Bの結合番号の数字(例えば11とか118とか15007など)をSheet2のあるセルに入力すると、Sheet2へSheet1のD・E・Fのセルにある数字が移るようにするには、関数はどのようにしたらよいでしょうか。Sheet1のC列セルの「BC結合番号」はランダムの数字で最高7桁、最低1桁ですし、同一番号が「BC結合番号」(空欄セルがあるので)とびとびの行に1桁と2桁の数字が出てきます。また、A列セルの番号は50行程度こどに2・3・4・・・・30ぐらいまでと増えていきます。当然、D・E・Fのセル値はSheet2へ移行した時は、単独で評値が入るようにしたいのです。また、リンク貼り付け以外の方法でやりたいのです。(初心者でマクロは使えません。)

  • マクロ作成のことです.

    excelのマクロで 同じ列の数字を比較なんですが, 列の数字一個ずつに列の中の数字と重複を調べて 重複したら調べた数字と重複した数字の行を消去したいです. 例えば, 列で 1 2 3 4 5 2 4 を2,4が重複したので, 1 3 5 にしたいです. よろしくお願いします.

  • Excelのマクロ

    表中のところどころにあるセルのデータをいっぺんに消去するマクロを作成するには、いちいちそのセルの番号を記述していかなくてはならないのでしょうか?

  • 【Excel】マクロを使って、自動集計ができるようにしたいと思っています。

    こんにちは。 宜しくお願い致します。 アクセスがあったデータをピポッドテーブルでまとめ、さらに集計結果を出したいと思っています。 ピポッドテーブルを作成するまではマクロの自動記録でどうにかなったのですが、その後の集計結果のところでとまどっています。 <データの現状> ※ピポッドテーブルで出したデータは、1・2行目が空白、3~5行目に項目名が入っており、6行目からデータが入っています。何行までデータが入っているかはその月によって異なり、行の一番最後はA列に「総計」と入力されています。 ※A~C列は項目名(日付や商品名など)が入っています。 D列以降は合計などが入っており、ここで基準として使いたい項目はすべて4行目に入っています。 列の数は項目によって増減します。 項目の一番最後は「総計」です。 マクロで集計したいのは次の作業です。 (1)「Sheet1」を全コピー→「Sheet2」に形式を選択して貼り付け→値貼り付け (2)貼り付けたシートで、D列以降、4行目の項目が「集計1」「集計2」「詳細集計」「総計」以外のものも列を表示しないにする ※D列から始まって、「集計1」の前の列までを表示しないにするのと、「集計1」の次の列から「集計2」の前の列までを表示しないにしたい。 例えば、H列に「集計1」・L列に「集計2」が入力されている場合は「D~G列」「I~K列」を表示しないにしたい。 (3)詳細集計の列を1列選択し、列を1行挿入。挿入した列4行目のセルに「合計」と入力。 (4)挿入した列のところに、6行目以降、A列に「総計」と入っている行まで数字のデータが入っているところ(A列で「総計」と表示されている行まで)は、「集計1」と「集計2」のセルの合計をそれぞれ表示し、枠線を入れる。 (5)一番先頭に1列挿入し、6行目から元A列の「総計」と表示されている前までの通し番号を入れる。 (6)「総計」の次の列の4行目に、「ゼロ数」と入力し、5行目に(3)で挿入した列、A列に「総計」と入っている1行前までの範囲で「0」表示があるセル数を表示。 (7)ゼロ数と入力したの次の列の4行目に「ゼロ率」と入力し、先に出した「ゼロ数」を(5)で入力した通し番号の一番最後の数で割った数を表示。 (8)入力終えた後はA1のセルを選択。 以上になります。 長いですが、どなたか教えてください。 宜しくお願い致します。

  • エクセルのマクロを作成したいです

    エクセルのセル「G9~G1508」に1-78までの数字をランダムに表示させるマクロを作成したいです。 一応自分で作成したのですがなんの事やら分からず… どういう記述をすればよろしいのでしょうか?

  • ちょっと特殊な連続印刷のマクロを教えてください

    次のような名簿があるとします。 A列    B列     通し番号 名前     1    阿部 2    佐々木 空白   空白 4    木村 5    田辺 空白   空白 空白   空白 8    三浦 通し番号が入力されていない場合は、名前も表示されない様になっています。 セルC1に通し番号を順々に表示(マクロで指定) セルC2にその番号の名前を参照表示←個人票として印刷 番号があれば(名前が表示されれば)印刷 としたいです。 個人票を連続印刷したいのですが、空白を飛ばして、 番号が入っている人だけを印刷、というマクロがどうしても組めません。 一つ一つ、番号が入っていれば名前を印刷のようなマクロを延々と 組むことは出来るのですが、名簿が長大なのでそれは避けたいです。 よろしくお願いします。

  • エクセルマクロで注文表を作成したい

    最大約5000件の注文表を作成において、マクロを使用して簡易化したいと思っています。 基本的には連番と枚数だけを業者に知らせるシンプルな注文表なのですが、以下のことをマクロで組みたいです。 (1)注文番号と注文枚数をピボットで集計したあと、A4(8列25行)雛形の表に注文のあった番号だけ枚数を入力したい。(注文のない番号も空白で必要だそうです) (2)ヘッダーをわざわざ設定を開いて変えるのではなく、シート上に作成したテキストボックスに入力するだけで、変更できるようにしたい。 (3)次回、集計するときのために雛形の枚数部分だけをボタンを1クリックするだけで削除したい。 注文は手書きでくるため、注文番号+枚数を入力するだけでも かなりの作業になるのです。ということで皆様の知恵をお借りできればと思います。マクロは初心者ですが、どうぞご指導のほどよろしくお願いいたします。

  • Excelのマクロを使って数字を入力したいのですが、方法がわかりません。

    ExcelのG列とI列にランダムに3桁の数字を作成しました(=ROUND(RAND()の数式を使いました)。 あいだのH列には‐(ハイフン)が入力されています。 これらを別のシートの同じ列に形式を“値”と選択してコピーしました。これらの数字をB列に入力したいのです。 具体的には、たとえば、G1セルに265,H1セルに-、I1セルに849と入力されているとしたら、B1セルに265-849と入力されるように設定したいのです。 それぞれの列にはランダムな数字が並んでおり、対応するB列のセルに同様に入力されるように設定したいのですが、方法がわかりません。マクロを使えばよいとのことですが、どなたか詳しく教えてください。 よろしくお願いします。

  • マクロの書き方2

    マクロの書き方2 tom04さま、本当にありがとうございました。めぐみです。 すみません、先程の質問の続きになってしまいます。 Sheet2にのA列は時々同じ番号が2つ,3つあることがあります。 Sheet2に同じ番号があった場合は、Sheet1のダブっている番号の横のB列セルを黒くしたいです。 そのセルの中はSheet2の情報が反映されてもされなくてもどちらでもかまいません。 ただ、Sheet2のA列に同じ番号があった場合にSheet1のダブっている番号の横のB列セルを黒くなるという機能が追加されていればそれで良いです。 例えば下記のように1行目と4行目に同じ番号が存在していたら、Sheet1のA列の702725の横のB列のセルが黒くなっていたらいいです。 ■Sheet2 A列  B列  C列 702725 X 702872 X 770074    0 702725    0 770223 Z 770474    0 770242 X 770264 X 770330    0 770347 X 770422 X 770468    0 770523 X 770577    0 770627 X 770672 X 770677    0 770720 X 770723 X 770725 Z 770727 X 恐れ入りますが何卒よろしくお願いいたします。

  • Excelのマクロで()内の文字を抽出して書き出したい

    HTMLにあるテーブルの部分をコピペして貼り付けたExcelファイルがあります。 A~Cまでの3列が埋まっている状態で、D以降の列は空欄です。 C列に123(1112)というように、数字(数字)の記載になっている部分があります。 ()の前と、中は必ず半角数字で、桁は1桁~5桁までと幅広い状態です。 この()内の数値をD~F欄に書き出したいです(縦3列のものを、横3列として書き出したい) 数字(数字)という記載のセルは、必ず縦に3つ並んでいますが C列は膨大なセル数なうえに、数字(数字)という記述以外のセルも間に入っております(数字のみのセルか、空欄のセルです) 3つ並んでいる部分のみを探して、()内の数値を抽出し、D~F列に書き出すことは可能でしょうか? 書き出す場所は、3つ並んでいるC列の最初のセルの横のD~Fだと助かります。 (数字(数字)がC6~8にあった場合、D6~F6に書き出される) なお、数字(数字)というセルはC列以外にはなく、4つ以上縦に並ぶ事もありません。 さすがにこのような内容を実行するのは不可能でしょうか? もし可能でしたら、マクロを組んでいただきたいです・・・よろしくお願いします。