• ベストアンサー

歯抜けの番号を埋めて行の挿入

部門 コード 商品名 業者 単位 分類 出数 原価 直営 単価差益  3    1   油   油屋    缶  油    1  500  550  50  3    2   水   水屋  リットル  水   1  500  550  50  3    5   栗   栗屋    kg  野菜   1  500  550  50  3    8   筍   筍屋    kg  野菜   1  500  550  50 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 上の図を下の図の様に歯抜けになっている番号を入れたいのですが、地味な作業で入れていくにはかなりの量がありまして、何か良い方法がありましたら教えてください。 部門 番号 コード 商品名 業者 単位 分類 出数 原価 直営 単価差益  3   1   1   油   油屋    缶  油    1  500  550  50  3   2   2   水   水屋  リットル  水   1  500  550  50      3         4   3   5   5   栗   栗屋    kg  野菜  1  500  550  50      6      7   3   8   8   筍   筍屋    kg  野菜  1  500  550  50 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

質問者が選んだベストアンサー

  • ベストアンサー
  • websol
  • ベストアンサー率50% (1/2)
回答No.3

VBAを使います。 「フォーム」のツールバーからボタンを選択して好きなところにボタンを貼り付けます。 「マクロの登録」で「新規登録」以下のコードを貼り付けてください。 ワークシートのデータの範囲に、「範囲」という名前を付けます。 ボタンを押せばOK。 ------------------------- Sub ボタン1_Click() Dim arange As Range Set arange = Range("範囲") Max% = arange.Rows.Count i% = 1 While i% < Max% If arange.Cells(i%, 2) <> arange.Cells(i% + 1, 2) - 1 Then arange.Rows(i% + 1).Insert arange.Cells(i% + 1, 2) = arange.Cells(i%, 2) + 1 Max% = Max% + 1 End If i% = i% + 1 Wend End Sub

uramaru
質問者

お礼

有難うございます。 ボタンを押したらびっくりしました。

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

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

先ほどの問題との関係は(逆の質問をしましたね。関数で 回答しようとしたら締めきられた)。 本質問ですが Sheet3に空き行の無いデータが入っています。 最下行は第10行と仮定しているので、実際は$B$10や$K$10を修正してください。 A3に =IF(ISERROR(MATCH(ROW(A3)-2,Sheet3!$B$1:$B$10,0)),"",INDEX(Sheet3!$A$1:$K$10,MATCH(ROW(A3)-2,Sheet3!$B$1:$B$10,0),COLUMN(A3))) といれ、K3まで複写する。 A3:K3を範囲指定して、K3で+ハンドルを出して下へ引っ張る。 B列には他の列に連番をつくり、その連番をB列に値複写してください。

uramaru
質問者

補足

有難うございます。 自分が担当している、データじゃないので分りやすいNo3を使用させていただきます。 大変勉強になりました。

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

VBAでの対応を想定して回答します。 ただVBAコードが判らないので、 ひとまずはアルゴリズムでの返答になることを ご了承ねがいます。 前提条件 ・コードが存在している場合、番号は同じ値となる。 ・同じコードを持つデータは無い。 ・コードは既に昇順となっている。 ・番号の列は既に追加されている。 ----ここから 一番最後の行に行く。 [コード]の値を変数Aに取得する。 do {   if(変数Aの値 > [コード]の値)   {     下に一行追加。     //この時、フォーカスが新しい行の     //[番号]列であって欲しい。。。   }   [番号]に変数Aの値を入れる。   変数Aの値を-1する。   フォーカスを一行上の[コード]に移す。 } while(変数Aの値がゼロになるまで) ・おしまい・ ----ここまで こんな感じでしょうか。

uramaru
質問者

お礼

有難うございました。 No3が自分にとって画期的だったのでそちらをせんたくすることにしました。 またよろしくお願いいたします。

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

関連するQ&A

  • エクセルのセル空白を隠す

    部門 番号 コード 商品名 業者 単位 分類 出数 原価 直営 単価差益  3   1   1   油   油屋    缶  油    1  500  550  50  3   2   2   水   水屋  リットル  水   1  500  550  50      3         4   3   5   5   栗   栗屋    kg  野菜  1  500  550  50      6      7   3   8   8   筍   筍屋    kg  野菜  1  500  550  50 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 上記のような図で、3・4・6の所が空白欄がありそれらを非表示にして上に詰めることって出来るのでしょうか。 部門 番号 コード 商品名 業者 単位 分類 出数 原価 直営 単価差益  3   1   1   油   油屋    缶  油    1  500  550  50  3   2   2   水   水屋  リットル  水   1  500  550  50  3   5   5   栗   栗屋    kg  野菜   1  500  550  50  3   8   8   筍   筍屋    kg  野菜   1  500  550  50 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 上のように詰めて表示がしたいのですが、分らずに困っています。 出来ればボタン一つかなにがで出来れば良いのですが、宜しくお願いいたします。

  • 科目の追加

    「為替差益」(または「雑所得」)、「為替損益」という科目を作りたいのですが、 使用している経理ソフト(やるぞ!青色申告)には、 「為替差益」科目があるべき場所「営業外収益」部門も、 「為替損益」科目があるべき場所「営業外費用」部門もありません。 ソフトの性質上、自由に部門分類を作って科目を作る事はできず、 既存の部門分類下に科目を作成しなければなりません。 以下のどの部門下にこれらが該当するかご存知の方がいらっしゃいましたら教えて頂けましたらとても助かります。 <既存分類> ・特別利益/収益 ・販管費/費用 ・他勘定振替/費用 ・製造原価/費用 ・売上原価/費用 ・売上/収益 ・資本/資本 ・その他/負債 ・固定負債/負債 ・流動負債/負債 ・その他/資産 ・他の資産/資産 ・繰越資産/資産 ・固定資産/資産 ・流動資産/資産

  • 歯抜けの時間を埋めて行の挿入

    過去に同じような質問があり試しましたが、うまく出来ませんでしたので、教えて頂けないでしょうか。(エクセル2003を使用) 日付 時間 数値       10/9 9:00 3 10/9 9:01 2 10/9 9:03 5 10/9 9:05 2 上記の図のように、時間(分)が入力されているデータを、下記の図のように歯抜けデータを埋めて挿入するには、どうしたらよろしいでしょうか? 日付 時間 数値 10/9 9:00 3 10/9 9:01 2 10/9 9:02  ←挿入したいデータ 10/9 9:03 5 10/9 9:04  ←挿入したいデータ 10/9 9:05 2

  • ワード2003 行番号の挿入 行番号が一定しない

    ワード2003を使っています。35行設定のため各ページに行番号を35に設定しようとしています。 ある特定のページは35行と表示されますが、他のページでは35以下の行数が表示されます。 すべてもページを35に表示させたいのですが、対処方法が分かりません。 どなたかご存じの方がいらっしゃったらご教示下さい。

  • Calcで行を挿入した時に行番号がずれる

    Open OfficeのCalcで商品の管理をしています。 それぞれの行の先頭には商品の通し番号を表示するセルがあります。 これは商品名を入力すると自動で表示されるようになっています。 例えば、2商品目であると「=IF(B2="","",A1+1)」という式が入っています。 つまり、2行目の商品名が空の時は、何も表示していなくて、 商品名を入力すると上の行の商品番号+1が自動で表示されるという式です。 問題なのは、時々入力し忘れた商品を後から行を増やして挿入したいという場合です。 行の挿入をすると、この商品番号が飛んでしまいます。 今の解決策としては、商品番号の一番上の式を一番下までコピーし直すことで解決しています。 しかし、行の数が増えるに従ってこの作業が非常に面倒になります。 何とか行を増やしても商品番号の数式が狂わない方法はないでしょうか? よろしくお願いいたします。

  • 医療機器の製造原価について

    こんばんは。 いつもお世話になっております。 質問はタイトルどおりなのですが、医療機器の製造原価について大きな疑問を抱いております。 お答えいただける範囲で結構ですので、ご回答頂ければと思います。 厚生労働省が発行している「薬事工業生産動態統計年報(2005年度版)」の医療機器の部門をに目を通した時のことです。 この年報には、各医療機器をセグメント区分しており、それぞれのセグメントを『生産/輸入品/出荷(国内/輸出)/12月末在庫』に分類され、金額ベース・数量ベースで記載されております。 生産金額を生産数量で割ると1台あたりの生産単価(生産金額÷生産数量=生産単価)が算出されますが、例えばCR(コンピューテッド・ラジオグラフィ)を見ますと生産金額が28,470,900千円、生産数量が15,575台と記載されており、生産単価が約180万円と算出されます。 そこで質問があります。 現在、CRの販売単価は最も安価なもので500万円弱となっていますが、生産単価と比較して約3倍ほどの開きがあります。 にもかかわらず、商談の際に値下げを要望すると、「赤字覚悟で」などといった発言がメーカーや卸から出てきます。 生産単価は本当に薬事工業生産動態統計年報に記載されている通りなのでしょうか。 それとも、経営に苦しんでいる医療機関を尻目に、この業界はメーカーのみが儲かる仕組みになっているのでしょうか。 どなたかご教授頂ければと思います。 宜しくお願い申し上げます。

  • 行に1行づつ挿入していきたい。

    たくさんのデータがあり、1行につき1行づつ挿入していきたいのですが、 なにか良い方はないでしょうか? 現在は1行づつ行を選択して挿入していますが、時間がかかってしまいます。 いい技を知っている方がいらっしゃいましたら教えてください。

  • 行の挿入ができなくなった

    win8.1 エクセル2010ですが、 行を1行選択して、右クリックで挿入しようとしたら 画像のようなエラーが出ました。 なぜ1行しか選択してないのにこの画面が出るのかわかりません。 シートの最終行は130行なので、多くないと思います。 パソコンを再起動させても、同じエラーが出ました。

  • 行の挿入が出来なくなりました

    Excel2007です ある日から 行の挿入をしようとすると 「オブジェクトからシートがはみだします その操作が出来ません」 のメッセージが表示され出来ません 困っております 

  • 「ワード」行番号の挿入(印刷)

    「ページ番号」の挿入(印刷)は、ありますが・・・ ところで、 ◆「行番号」の挿入(印刷)は、できるのでしょうか? もし、できるのであれば、教えてください。 よろしくお願いいたします。 <(_ _)>

専門家に質問してみよう