始めて投稿させて頂きます。
VBA勉強中であり、既出でありましたら、大変失礼致します。
エクセルで、sheet1 セル:C2には、日付が
C3には、売上数が
C4には、売上金額が入っています。
それぞれは、日々更新していきます。
Sheet2のセル:B2:AE2に、2017/2/1~2017/3/2の日付が入力されており ※①、②
※①(今月の場合)
※②(1カ月+3日分)
B3:AE3に、それぞれの日の売上数
B4:AE4に、それぞれの日の売上金額
を入力する場所を設けてあります。
Sheet1の日々変わるセルC3:C4をVBAにて、sheet2の該当する欄に値の貼り付けを出来るようにしたいです。
該当する日付を調べるまでは、なんとか出来ましたが、そこから先がうまくいきません。
恐縮ですが、知恵のあります方、ご教授をお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
以下のマクロを標準モジュールに登録してください。
----------------------------------------------
Option Explicit
Public Sub 売上設定()
Const sh1 As String = "Sheet1"
Const sh2 As String = "Sheet2"
Dim dif As Long
dif = Worksheets(sh1).Cells(2, "C").Value - Worksheets(sh2).Cells(2, "B").Value
If dif < 0 Or dif > 99 Then
MsgBox ("該当日付なし")
Exit Sub
End If
If Worksheets(sh2).Cells(2, 2 + dif).Value <> Worksheets(sh1).Cells(2, "C").Value Then
MsgBox ("該当日付なし")
Exit Sub
End If
'該当日付に数量、金額を設定
Worksheets(sh2).Cells(3, 2 + dif).Value = Worksheets(sh1).Cells(3, "C").Value '数量
Worksheets(sh2).Cells(4, 2 + dif).Value = Worksheets(sh1).Cells(4, "C").Value '金額
MsgBox ("設定完了")
End Sub
------------------------------------------------------
回答ありがとうございます。
早速試させて頂きましたが、良さそうです。
勉強不足な感、痛感致しました。
引き続き勉強していきたいと思います。
No.2
- 回答日時:
こんばんは!
すでに回答は出ていますので、参考程度で・・・
標準モジュールです。
Sub Sample1()
Dim c As Range, wS As Worksheet
Set wS = Worksheets("Sheet2")
With Worksheets("Sheet1")
If WorksheetFunction.CountBlank(.Range("C2:C4")) = 0 Then
Set c = wS.Rows(2).Find(what:=DateValue(.Range("C2")), LookIn:=xlFormulas, lookat:=xlWhole)
If Not c Is Nothing Then
c.Offset(1) = .Range("C3")
c.Offset(2) = .Range("C4")
Else
MsgBox "該当日付なし"
.Activate
.Range("C2").Select
End If
Else
.Activate
.Range("C2:C4").SpecialCells(xlCellTypeBlanks).Select
MsgBox "データを入力してください"
End If
End With
End Sub
※ こんな感じではどうでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Excel(エクセル) エクセルについて教えてください。 1 2023/03/03 08:38
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBA 別シートの複数の...
-
シャープのアクオス sh-m25 を...
-
excel:色付き文字の抽出と変換法
-
重複データの集計マクロについて
-
VBA 貼付先範囲(行)がいっぱ...
-
VBA別シートの最終行の下行へ貼...
-
[EXCEL]全てのチェックボックス...
-
Excel VBA元データから別シー...
-
Excel VBA インデックスの境...
-
WorkbooksとWorksheetsを簡単に...
-
エクセルVBAで 2種のリストを...
-
スマホ機種変更で旧機種のGoogl...
-
LAVIE Direct DT PC-GD298ZZAL...
-
外付けHDDをフローリングに落と...
-
ドコモの電話帳バックアップに...
-
拡張子「.HUF(.huf)」のファ...
-
au(MEDIASKIN)からiPhoneへの...
-
Docomo携帯メールをコピーした...
-
パソコンから携帯でフルうたを
-
自作した3pgかmp4ファイルを着...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel で行を指定回数だけコピ...
-
エクセルVBA 別シートの複数の...
-
シャープのアクオス sh-m25 を...
-
excelの差込印刷で可視セルだけ...
-
Excel VBA インデックスの境...
-
VBA:同じ文字列データの比...
-
エクセルVBAで 2種のリストを...
-
エクセル:VBAで月変わりで、自...
-
歯抜けの時間を埋めて行の挿入
-
エクセルVBAで SendKeys "{TAB}"
-
VBAで条件が一致する行のデータ...
-
VBA別シートの最終行の下行へ貼...
-
EXCELマクロで全シート対...
-
Excel VBAでシート内全体に非表...
-
VBA 貼付先範囲(行)がいっぱ...
-
VBAで複数シート選択
-
【VBA】UserForm1の中で使うワ...
-
【WORD差し込み印刷】複数レコ...
-
VBAで複雑な構成の転記
-
エクセルVBAでの日付順のデ...
おすすめ情報