アプリ版:「スタンプのみでお礼する」機能のリリースについて

大至急!Excelのsheet1のセルの数字をsheet2のセルに反映させたい。

添付した様な表があります。sheet1の黄色のセルの数字をsheet2にある商品コードが同じセルに反映させたいです。わかりにくいかもしれませんが、よろしくお願いします。

「大至急!Excelのsheet1のセルの」の質問画像

質問者からの補足コメント

  • sheet2の表になります。

    「大至急!Excelのsheet1のセルの」の補足画像1
      補足日時:2016/05/18 22:43
  • sheet1の黄色のセルには簡単な引き算の数式が入っています。

      補足日時:2016/05/18 22:59

A 回答 (5件)

どのようにうまく行かないのでしょうか?


2枚の写真の状態でコードを実行すると
商品コード「1234」は「5」に更新されます。
商品コード「2345」は、該当が無いので前の値が保持されます。消した方が良ければ消すことも出来ます。
    • good
    • 0
この回答へのお礼

助かりました

何とか勤務時間内にできました。ありがとうございました!

お礼日時:2016/05/19 17:32

マクロを使用します。



Sheet2 のシートモジュールに
------------------------------------------------------------------------
Private Sub Worksheet_Activate()
Call 集計
End Sub
------------------------------------------------------------------------
標準モジュールに
------------------------------------------------------------------------
Sub 集計()

Dim 元行 As Long
Dim 先行 As Long

Sheets("Sheet2").Select
元行 = 4
Do While 元行 <= Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
先行 = 4
Do While 先行 <= Cells(Rows.Count, 1).End(xlUp).Row
If Sheet1.Cells(元行, 1).Value = Cells(先行, 1).Value Then
Cells(先行, 3).Value = Sheet1.Cells(元行 + 2, 8).Value
Exit Do
End If
先行 = 先行 + 3
Loop
元行 = 元行 + 3
Loop

End Sub
------------------------------------------------------------------------
Sheet2 に切り替えた時に計算するので切り替えた時に微妙な時間がかかります。

なおマクロ(VBA)の使い方は、ここでは書ききれないので以下を参考にするか、誰かに聞いてください。文章にすると難しいですが、使ってみるとそれほどではありません。
http://www.moug.net/vba/beginners/
    • good
    • 1
この回答へのお礼

ありがとうございます。早速やってみたのですが、うまくできません…記載していただいた式を入れました。補足に画像載せるので、見ていただけますか?よろしくお願いします。

お礼日時:2016/05/19 11:17

念の為聞いておきますが、


① Sheet2 は3行ごと結合されていますが、結合する必要があるのでしょうか?
② Sheet2 が有ってそれに当て嵌めなければいけないのでしょうか?それとも Sheet1 の「商品コード」「商品名」「在庫」から作成してしまっても良いのでしょうか?(不要な項目を除いた感じになります)
    • good
    • 0
この回答へのお礼

結合の必要はありません。1行にして作成しても問題はありません。
順番として、日々の業務でsheet1をまず入力します。毎日数字(在庫)は変わるので、今はsheet1を入力後に出荷された商品コードをフィルタを使って出し、1件ずつsheet2の在庫を手入力しています。それを自動反映できたら業務が楽になるのです。

お礼日時:2016/05/19 00:22

手動?で良ければ Sheet2 C4セルに「=Sheet1C4」と計算式を入れれば出来ますが…


自動で反映ですよね!マクロとか使っても良いですか?
    • good
    • 0
この回答へのお礼

あなたに会えてよかった

回答ありがとうございます。データ数がかなりの量なので、自動反映がいいです!マクロは初心者で使ったことがありません…解説お願いできますでしょうか?

お礼日時:2016/05/19 00:02

Sheet2の黄色いところをクリックして、エクセルの上の関数のところを=にして、sheet1の反映させたいところをクリックすれば同じにはなります。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。補足に入れましたが、sheet1の黄色のセルには簡単な引き算の数式が入っています。=にする作業はしたのですが、うまくできませんでした。他に方法はありますか?

お礼日時:2016/05/18 23:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!