• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA条件に合う行をコピー貼付けるには?)

エクセルVBAで旧データを新データにコピペする方法

K Kazz(@JazzCorp)の回答

回答No.2

>3か月分のデータが日単位で並んでいるのですが、簡略のため月単位で説明させて頂きます。 アホ!日単位で説明でせよ!! 作りたいのはファイルか?シートか??

関連するQ&A

  • VBAの繰り返し処理?の方法

    VBAを勉強し始めた者です。 下記、やりたい処理があるのですがやり方が分からないのでアドバイス頂ければと思います。 よろしくお願いします。     A       B       C       D       E       F 1 発注単位 1月末在庫 2月使用数 2月注文数 2月末在庫 安全在庫 2   50      500      400            =B2-C2+D2  301 3 ある品種について2月末時点で301以上の在庫を持ちたい場合、 いくつ注文するか(D2セルに入る数値)を求める方法を教えてください。 ただし、注文する数は発注単位(50)の倍数とします。 上記は1品種ですが、縦に色々な条件の品種が並んでいると想定してください。 自分のイメージはE2セルが301未満なら50買う、50買っても301未満なら さらに50買う、301を超えたら終了するというイメージです。 今回の場合、250買うという結論を導きたいです。 もっと簡単な方法があればそれでもかまいません。

  • VBA 条件が一致した場合のみコピーする

    VBAについて、現在勉強中な為、色々調べておりますが、詳しい方がおりましたら教えてください。 在庫管理の表をエクセルでやっております。 注文が来て、品物の手配をする時に、在庫の有無を確認したいので下記のような事が出来れば 良いと思っております。 3つのシートを使っております。シート名は、”必要数””出荷数””在庫数” シート:”在庫数”では、入荷数の合計から、マクロを使ってコピーした”出荷数”の数を 差し引くことにより、発注手配が必要な物とそうでない物がわかりやすいように作りたいと思って おります。 今回は、注文来た数を出荷数のシートにVBAでコピーさせる方法の質問です。 シート名:”必要数” のセルC2:C:50 を、コピーして、隣のシート”出荷数”のA列の 一番上の空白に、形式を選択して貼り付け(値・行列を入れ替える) ただし、A列には、日付が入力されてる為、参照した空白の一つ上のセルがコピー元と同じ 日付なら、貼り付けをしないでエラー表示させたい。 自動マクロでは、コピー元を選択して、ここに貼り付けみたいな事はできたのですが 3行目に貼り付けした後は、4行目に貼り付けるという自動マクロがわかりません。 ネットで調べたコードを何個もコピペしてやってみたのですが、なかなかうまく行きません。 詳しい方がおりましたら、コードを教えて頂けると助かります。 どうぞ、宜しくお願い致します。

  • エクセルで非表示行をうまくコピーする方法は?

     お世話になります。  エクセルで複数の項目についてデータ集計シートを作ってます。各項目の入力条件は一条件一行です。つまり一つの項目について複数行を使います。  項目毎に条件の数が違うので項目によって使う行数が異なります。  集めたデータはCSVに出力してアクセス等で分析、データベース化をしたいのですが、項目毎に行数が異なるということはCSVのフォーマットが変わってしまうということなので、最大条件数を有する項目の行数を確保して条件が少ない項目は下の方が空行になるようにします。  空行が多いと見づらいので空行は非表示にします。  ここからが問題で、このデータシートをテンプレート化し、不要な項目は削除、2回以上使うものは行を適宜挿入、コピペして使うことにしたいのですが、非表示にした部分がコピーされません。(非表示部分は下の方なので範囲指定からはずれてしまいます)  どうすれば良いでしょうか?  一度表示にしてコピペすれば問題ないのですが、入力作業は特定多数の人にお願いするので、あまり複雑な作業はさせたくありません。  はじめからアクセスを使えばいいじゃないかという意見もあろうかと思いますが、世の中アクセスを使いこなせる人ばかりじゃないので、入力作業はエクセルで手軽に・・・と考えています。  説明が長くなりましたがよろしくお願いします。

  • Excel VBA 在庫管理について

    Excelで在庫管理をしているのですが、とても効率が悪く、改善したいと思っています。 週に1度発注するのですが、 売上と仕入れから現在の在庫を算出し、在庫管理表(Excel)に反映させ、フィルターで各メーカーごとに発注するものだけを絞り、別シート(発注書)に貼り付けて、それを印刷または新しいブックで保存、という作業をメーカーの数だけやらなければいけません。 全く経験がなく途方に暮れています。 VBAは独学でやっている感じなので、在庫管理の方法さえ決まればマクロを当てはめようと思っています。 わかりやすくて、単純で、パッとできるようなものってないですか? 在庫管理をやっている方、こうやると効率いいよ、など何でもいいので教えてくださいm(_ _)mよろしくお願いします。

  • Excelの関数式を教えてください。

    下記の場合、空欄セルにどのようなExcel関数式を入力すれば良いか教えてください。 また、その式の考え方(読み取り方)も解説していただけると助かります。      A        B        C     D     E      F   最小発注数 まるめ発注数 現在在庫 使用数 発注数 設定在庫 1   1000       100      1500   1200         1500 目的:E列の発注数を決定したい 条件:(1)設定在庫を満たすようにしたい     (2)最初は最小発注数で注文し、それでも設定在庫に      満たない場合は、まるめ発注数の倍数で発注する     (3)設定在庫以上の場合は、注文数は0 今回の例では、2月使用後の在庫が1500-1200=300になるので 1000+100×2=1200を注文したい。 CEILING関数を使うと考えますが、どのように表現するかわかりません。 

  • ExcelのVBAマクロ作成で他のExcelから条件つきでデータを取り込みたい

    毎日の在庫データが記載されたファイル群の中から特定のデータのみを他のファイル(貼付け先ファイル)の一つのシートに縦一列にして取り込みたいのですがどうすればよいのでしょう? 具体的には… ・在庫データは年ごとにファイルが分かれている(ファイル名「在庫2003年.xls」など) ・在庫データファイルは月ごとにシートが分かれている(シート名「2003年04月」など) ・シートの中のA列に「日付」(上記のシートなら2003/4/1から2003/4/30まで)、D列に「製品A在庫数」、F列に「製品B在庫数」が入力されており他の列にも様々なデータが入力されている。 ・貼付け先ファイルはA列に日付(2000/1/1~2006/12/10)が入力されている。 この状況で、例えば2003年4月と指定してマクロを実行すると、指定の在庫データファイルのシートから「製品A在庫数」と「製品B在庫数」を貼り付け先ファイルの、日付に対応したB列、C列の部分に入力してくれるようにしたいのですが、VBAの記述の仕方がわかりません。どうすればよいのでしょう? お願いします!

  • Excel VBA : 追加でコピペする方法

    ExcelのVBAでマクロを作成したので教えて下さい。 sheet(1)C3からC列にDATAが入力済みです。 (同じく、D3からD列にもC列と同じ行数DATAが入力済みです。) DATAは、途中で空白セルは無く、全て埋められた状態です。 (つまり、C列とD列の使用されている行数は全く同じです。) それぞれのDATA(C列、D列)をコピーして Sheet(2)のB3(B列)とC3(C列)から下方にペーストするのですが、 Sheet(2)のB列とC列には既に旧DATAが入力済みなので 旧DATAは消去せず下側に追加する形式でコピペしたいのです。 (旧DATAの直下の行に新規にDATAを追加) 利用済みの行数を取得してコピーは下記で良さそうですが ?   Cells(3,3).end(xlDown).Row.copy 書き込み(ペース)で思考が停止状態です。 どのようにすれば良いでしょうか ?

  • エクセル複雑な条件での単価計算

    皆様のお知恵をお貸し下さい。 エクセルで見積書を作っており、以下の様な条件で、 値(金額)を出す関数を構築したいのですが。。。 商品毎に注文数によって、単価が設定されています。 また、商品毎に発注単位が異なっています。 例えるとこんな感じです↓      1~9個    10~49個   50~99個 商品A \300/1個  \200/1個    \100/1個 ※発注単位は1個ずつ      24~120個   144~240個   264~312個 商品B  \/500個    \400/1個    \300/1個 ※発注単位は24個ずつ 例えば・・・ 商品Aを11個注文した場合の金額 商品Bを168個注文した場合の金額 を求める関数が知りたいのですが。。。 エクセルも掲示板の書き込みも初心者の為、説明が足りなかったらすみませんm(__)m

  • エクセルVBAでデータベースを作成しています。

    エクセルVBAでデータベースを作成しています。 A列には日付データが日付が古い順に上から入っています。 B列以降は出荷数や次回納品日などの付属データが入っています。 A列(日付) B列(出荷数) 7/1     10 7/15      20 7/31     5 8/2     10 8/4     25 8/23    10 8/30    20 9/2     15 9/20    21 9/30     3 出荷データを更新する度に、最終行の次の行に新しいデータが追加されます。 上記データベースは3か月分のデータだけでも行数が3万近くになるため、エクセルの 限界行数に達する前に、何か手を打ちたいのです。 例えば、予め6万行を限界行数に決めておき、データ更新する際に、データベースの限界行数までの残り行数と、追加するデータの行数を比較して、後者が大きいときには、データ、つまりデータベースの行を消去する。というマクロを組みたいと考えています。上記の例で説明すると、10月分のデータを追加しようとして限界行数に達することが分かった場合、7月に該当する行を一括して消去する。という流れです。 限界行数に達したときに、MsgBoxで「1か月分のデータを削除してよろしいですか?」→OKのときに処理を実行するという流れで行いたいのですが、何かよいアイデアがあれば教えてください。

  • VBAの構文を教えてください。

    エクセルVBAについて教えてください。 現在、Excelデータを使って注文書の管理をしています。 1.注文書という名前のフォルダ  (1)注文No.の名前でBOOK名を付け、注文をした詳細Excelデータを作成。※No.ごとの名前でExcelデータBOOKを作成しています。なのでかなりのBOOK数があります。  (2) (1)で作成したデータはかなりのBOOK数なので、「注文書インデックス」という名前のExcelデータBOOKをつくり、注文したNo.順で一覧表に簡易詳細を入力したデータを入力。一覧のNo.と一致するBOOKにハイパーリンクを貼り付けてダブルクリックするとそのNo.のBOOKを開けるという作業を行っています。 ハイパーリンク貼り付けをやめて、VBAで行うにはどのような構文になるのでしょうか? VBAの知識をお持ちの方!教えてください。お願いします。