エクセルで在庫管理をすることになりました。完璧に作って
みんなに認めてもらいたいので、マクロも組んでいます。
今まで本とか読んでがんばっていましたが、どうしても
動かないので、おしえてください。下のように組んでもオブジェクト
が無いと言って動いてくれないのです。皆さんには簡単すぎるかもしれず、
恥ずかしいですがよろしくお願いします。
Private Sub 警告()
If thisworksheets.Range("c6") < Worksheets("在庫限界入力").Range("c6") Then
MsgBox "在庫不足", vbOKOnly, "警告"
End If
End Sub
No.3ベストアンサー
- 回答日時:
補足の
>・・・警告をだしたいのですが
について考えてみました。
シート名を
データを入力するシート・・・データ入力
データを合計するシート・・・データ合計
限界値入力シート・・・・・・在庫限界値 とします。
計算方法は自動にしておきます。
シート<データ入力>のどこかに、『=データ合計!C6』 を入力します。差し障りのない位置がいいと思います。
VBE画面で、シート<データ入力>のコードウインドウに下記を貼り付けます。
Private Sub Worksheet_Calculate()
If Worksheets("データ合計").Range("C6") < Worksheets("在庫限界入力").Range("C6") Then
MsgBox "在庫不足", vbOKOnly, "警告"
End If
End Sub
ありがとうございます。ああ、なるほどと思いました。ちょっと
わたしの発想が貧弱だったのですね。
これでだめだったら、また新しい質問をします。
本当にありがとうございました。
No.2
- 回答日時:
こんにちは。
Private Sub 警告()
If Range("c6") < Worksheets("在庫限界入力").Range("c6") Then
MsgBox "在庫不足", vbOKOnly, "警告"
End If
End Sub
「thisworksheets.」の部分をとればエラーは出ないと思いますよ。
この回答への補足
早速回答していただきまして、ありがとうございます。おかげさまで、エラーが出なくなりました。
ただ質問の内容自体が間違っていたようです。他のシートで入力した数が、このシートに合計されて、在庫限界入力シートの数字よりも少なくなったら警告をだしたいのですが、ぜんぜんうまくいきませんでした。public subかなあと思ってやってみましたが、もともと理解力がないせいか、本を読んでもわかりませんでした。
すみません。
ご指導のほどよろしくお願いします。
すみません。初めてなもので、補足に書いてしまいました。
早速の回答、ほんとうにありがとうございます。
よろしければ、補足に書いた質問のほうも見ていただけますか。
質問のしかたが不十分だったみたいで。
よろしくおねがいします。
No.1
- 回答日時:
「thisworksheets」にしようとしてることは、
マクロをこのシートに書いているわけですよね。
「thisworksheets」は最初「Dim」でオブジェクトとして定義しないとオブジェクトとしてはみなされませんよ。
どうせならこうやってみたらどうですか?
Private Sub 警告()
If Me.Range("c6") < Worksheets("在庫限界入").Range("c6") Then
MsgBox "在庫不足", vbOKOnly, "警告"
End If
End Sub
「thisworksheets」を使う場合は、
Private Sub 警告()
Dim thisworksheets As Object
Set thisworkbooks=Me
If thisworksheets.Range("c6") < Worksheets("在庫限界入力").Range("c6") Then
MsgBox "在庫不足", vbOKOnly, "警告"
End If
End Sub
あまり意味がないですが・・・
この回答への補足
早速回答していただきまして、ありがとうございます。おかげさまで、エラーが出なくなりました。
ただ質問の内容自体が間違っていたようです。他のシートで入力した数が、このシートに合計されて、在庫限界入力シートの数字よりも少なくなったら警告をだしたいのですが、ぜんぜんうまくいきませんでした。public subかなあと思ってやってみましたが、もともと理解力がないせいか、本を読んでもわかりませんでした。
すみません。
ご指導のほどよろしくお願いします。
すみません。初めてなもので、補足に書いてしまいました。
早速の回答、ほんとうにありがとうございます。
よろしければ、補足に書いた質問のほうも見ていただけますか。
質問のしかたが不十分だったみたいで。
よろしくおねがいします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 09:24
- Excel(エクセル) エクセルの自動更新のタイミングについて 1 2022/07/20 16:12
- Access(アクセス) エクセルのVBAについて教えてください。 4 2023/01/21 10:21
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/01/23 17:13
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Access(アクセス) ExcelのVBAコードについて教えてください。 4 2023/01/20 09:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
Excelマクロのエラーを解決した...
-
ユーザーフォームに入力したデ...
-
実行時エラー'1004': WorkSheet...
-
excelのマクロで該当処理できな...
-
【Excel VBA】Worksheets().Act...
-
同じ作業を複数のシートに実行...
-
XL:BeforeDoubleClickが動かない
-
VBAで、シート間の転記するコー...
-
ブック名、シート名を他のモジ...
-
シートが保護されている状態で...
-
エクセルのマクロについて教え...
-
ExcelのVBAのマクロで他のシー...
-
実行時エラー1004「Select メソ...
-
VBA 最終行まで数式をコピーする
-
【ExcelVBA】動的にボタン、ボ...
-
【VBA】指定した検索条件に一致...
-
VBA 検索して一致したセル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
XL:BeforeDoubleClickが動かない
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報