• 締切済み

EXCEL入力値を条件によって他セルにコピーしたい

VBA独学で勉強している初心者です。 試行錯誤の連続で、ここでつまずきました。 どうか、誰かご支援お願いします。 画像添付ファイルを参考に下記にやりたいことを記入させていただきます。 J列にある「伝票単価」が-(マイナス)金額の場合に、その金額を次の条件に該当するL列「値引単価」にマイナスを省いた金額で表示したいです。 条件としては、A列「物件No.」、E列「商品コード」、G列「数量」が等しい時です。 なおかつ、「伝票単価」がプラス金額の行のL列「値引単価」にその金額をコピーし、マイナスの伝票単価の行は削除したいです。 基本的に、「伝票単価」はプラスとマイナスでセットになっています。

みんなの回答

  • masnoske
  • ベストアンサー率35% (67/190)
回答No.3

あなたがやりたことの前提条件が抜けているので、質問させてください。 A列、E列、G列が等しく、J列がマイナスの行は1つだけでしょうか。  Yes → 回答が見つかるかも知れません。  No → A列、E列、G列が等しく、J列がマイナスの行では、J列の値は同じでしょうか。       Yes → 回答が見つかるかも知れません。       No → L列の表示元であるJ列が複数あるため、他に条件が必要です。

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

これはJ列でマイナスの単価金額が入ったシートの表が既に出来ている場合で、そのJ列の値だけを、条件に合えば、書き換えたい(質問のコピーとは良くわからないが?別シートに作り直すと言う発想もありえるが)のか。 >A列「物件No.」、E列「商品コード」、G列「数量」が等しい時です。 この3つが等しいことはありえないだろう。だから書くとすれば 「以前の行に、今の行とA列「物件No.」、E列「商品コード」、G列「数量」について、それぞれくらべて、3列とも等しい行があれば」、と言うことか。 表現は良く注意して書いてください。 >、「伝票単価」がプラス金額の行のL列「値引単価」にその金額をコピーし、マイナスの伝票単価の行は削除したいです。 の意味も良くわからないが、前段が主要課題だろう。 ーー エクセルVBAぐらいでは3条件一致の有無と場所《行)を判別するのは難しいのだ。データベース言語などで無いと難しい。 (1)3列を結合した文字列を作って、同一の文字列が上の行のものに見つかるかなどならできる。 (2)または3列で序列をつけて並べ替えして、直前直後のデータを比較して、判別していくて手も在る。 (3)今まで出てきた3条件の組み合わせを配列などに記録して、毎行その配列内にあるかを検索する手もあるが、 初心者の領域ではない。 素人では、3条件一致は一瞬にして頭にイメージできるが、プログラム的には難しいのだ。 ーー 上記に当てはまる回答のコードは初心者には難しいと思う。上述にあてはまらない良い回答が出るかどうか待ってください。

tostake
質問者

お礼

表現方法は難しいですね。 imogasiさんのおっしゃる通り、「以前の行に、今の行とA列「物件No.」、E列「商品コード」、G列「数量」について、それぞれくらべて、3列とも等しい行があれば」と言うことです。 やはり初心者には難しいんですね。そこは手作業でするのが良いかもしれませんね。 ありがとうございました。

  • imo8001
  • ベストアンサー率14% (26/179)
回答No.1

うーん なんかよくわかりません A,E,G列は要素が違うのに何で等しいという条件ができるのですか? どう考えても物権NOと数量が=なんてないと思いますが。 違うんだろうけど もう少し整理して書いたほうがいいです VBAを勉強しているなら やりたいことを ”日本語コード” で書いてみたらいいのでは? そうすればもっと意味が伝わると思いますが

tostake
質問者

お礼

言葉での表現は難しいですね。 これからは整理して書いてみます。 アドバイスありがとうございました。

関連するQ&A

  • Excel VBA 「小計」と入力したら自動計算

    エクセルの小計の計算について質問いたします。    A列    B列      C列   D列     E列    F列 1 施設名  2      商品名,内容   1    単位     単価    金額(数量×単価) 3      商品名,内容   1    単位     単価    金額(数量×単価) 4                              小計     ●●●● ――――――――――――――――――――――――――――――――― 5 施設名 6      商品名,内容   1    単位     単価    金額(数量×単価) 7      商品名,内容   1    単位     単価    金額(数量×単価) 8      商品名,内容   1    単位     単価    金額(数量×単価) 9                              小計     ●●●● ―――――――――――――――――――――――――――――――――                                合計     ●●●● 施設名ごとに項目が複数あり、施設ごとに項目の数も違います。 これを施設ごとに●の所に小計を出したいです。 「小計」が数回にわたり出てくる場合は、「前回小計をした次のセルから今回小計するセルの前まで」を計算させる訳ですが、どんなVBAを組めばいいのかわかりません。 理想としてはにE列に小計という文字を入れるとF列に自動で計が出るようにして、さらに小計の合計を最後の行のセルにだしたいです。。 さらに、見やすくなるように小計の下のセルにA~Fの間に太線を引いて施設ごとの区切りがわかるようにしたいです。。 繰り返し作業ばかりで大変です。 どなたか知恵をお貸しください。

  • Excelで条件を2つ満たすセルに金額を入力(表示)させるには

    色々と考えてみたのですが、上手く結果が出せなかったので質問させてください。 添付のような表で右側のL3:M10に条件があります。 L列にはカテゴリの条件、M列には担当の条件です。 黄色く塗られている範囲に、この二つの条件に見合うセルにN列の金額を表示させたいのですが、関数やマクロなどを使って自動で表示させることが出来るのでしょうか。 例)カテゴリが●●(8行目)、担当がBBB(D列)にあたるD8に、5,200という数値を表示 今は手で自分で確認しながらやっていますが、数が多い(実際にはもっとデータ量があります)のと間違えそうで、単純なことでありますが時間を取られてしまっています。 何か作業を省略できる方法があれば教えてください。 よろしくお願いします。 [Excel2003/Windows XPを使用]

  • エクセル 表の自動追加

    エクセルで見積書を作成しています。 単純化して書きますと    A      B        C    D   E 1 商品コード 商品名    単価   数量  金額               合計¥~~ vlookup関数を使ってA列に商品コードを入力B列に商品名、C列に単価が引用され、後はD列の数量を入力すればE列の金額および合計金額が出るというようにしているのですが、 A~Eが埋まれば自動的に2行目が合計との間に挿入されるような関数?などはあるのでしょうか。現在では15行程度の表があるのですが、もっと数が増えたときや、数が少ないときに〆の線を引くのが面倒なのです。  私自身はエクセルはネットで独学程度で学んでいるので詳しくありません。自分でいろいろ調べたのですが(と言ってもネットで調べただけですが)VBAを使用しなければ難しいでしょうか? 拙い文章で申し訳ありませんが、ご教授のほどよろしくお願いいたします。

  • 「値引入力」って何に使うのですか?

    ある販売管理パッケージのカスタマイズ開発を しております。 売上入力のメニュー画面には、「売上入力」、 「売上返品入力」の他に「値引・値増入力」 という選択肢があるのですが、 これは何に使うものなのでしょうか? 単に値引きするだけなら、 売上入力の単価を訂正して値引することもできますし、「値引」という商品名を使って、数量=1×マイナス金額で行値引きに対応することもできるのですが、 これをあえて使うメリットって何なんでしょう? 経理上、必要なのでしょうか? さらに値引はわかるのですが、現実的に値増なんて 発生するものなのでしょうか?

  • ExcelでVBAを使い印刷したいのですが、条件が・・・

    お世話になります。 VBAを使い印刷をしたいのですが、条件でどうしても分からず、どなたか回答を宜しくお願い致します。 その条件とはデータが入力されている最終行プラス5行(空白)で印刷をしたいのですが、UserRange.RowsCount+5でいろいろ試みましたが、そもそもコレだと列が最終列まで指定してしまい、とんでもない目に会いました。印刷範囲の設定で列は変えずに行をプラス5(下)にという感じです。 どなたか分かるかた是非宜しくお願い致します。

  • エクセルで数字を入れたらとなりのセルに文字が出るようにするにはどうしたらいいですか?

    小売店ですが仕入れの伝票の入力をしなければなりません。項目は・コード(六桁の数字)・商品名・数量・単価・金額です。 このコードナンバーを入れたら隣のセルに商品名そのまた隣のセルに単価と出るようにするにはどうしたらいいのでしょうか? 現在はすべてひとつづつ入力しています。 数量と単価を入れたら金額がでるようにだけは出来ましたがそれ以上がわかりません。 宜しくお願い申し上げます。

  • エクセルのセルについて・・・

    エクセルのセルをキッチリ正方形に設定する方法 を教えて下さい。 列、行の数値入力を直接してもそれぞれの 意味合いが違う様で困惑しています。 なんとなく見た目での判断を試行錯誤してでしか 出来ませんでした。。。

  • エクセルの条件付き書式を教えてください。

    エクセルバージョンは2010です。 B列に"あ"を含む文字列、または”い”を含む文字列を入力している場合に、特定の行、たとえばA1:A100を塗りつぶす、やリ方がわからなくて試行錯誤しています。どなたか教えていただけないでしょうか?

  • 粗利益の計算方法について教えてください。

    粗利益の計算方法について教えてください。 通常、粗利益は  粗利益=売上金額(売上単価X売上数量)-売上原価金額(売上原価X売上数量) で計算されると思いますが、 ・売上金額が0の場合(例えばサンプル出荷等金額が発生しない売上伝票) ・売上金額がマイナスの場合(例えば値引伝票、返品伝票) の算出をどうしたら良いか悩んでいます。 何かご助言がありましたらお願い致します。

  • 計算方法を教えて下さい。

    計算方法を教えて下さい。 列1行1に商品名列2行1単価列3行1値引列4行1金額 同じ事を繰り返して行5まで入力しています。 式として単価から値引して金額が自動計算する式を入力しております。 列3の値引の数値が入ってないセルは計算しない方法を教えて下さい。 下記の様な表を作って計算式を入れてます。 商品名     単価    値引   金額 テレビ    150000   5000   145000 パソコン   100000        100000 プリンター   50000 50000 パソコンの商品とプリンターには値引きがないので金額は100000が入らない様にしたいのです。 値引きは、パソコンもブリンター値引きをいれます。値引きの数値が入った時点で金額に数値が入るようにしたいので。このような計算式を教えて下さい。お願いします。

専門家に質問してみよう