|
vbaは初心者です
以前教えていただいたコードに追加したいのですが
教えて下さい。"AN3:BM3"にデータがある場合は
下記のコード[クリアー]を実行してからMainRを実行というコードを
組み込みたいのですよろしくお願いします。
また作業完了時コード中★★の部分に
同じように警告を出したいと考えてます。IF Thenの書き方が
いまいちよくわかりませんので教えて頂き今後の参考に出来ればと
思っています。単純な質問だと思いますが悩んでます。
お解りの方 恐縮ですがお願いします。
Sub クリアー()
Sheets("注文書作成").Select
ActiveSheet.Unprotect
Range("AN3:BM3").Select
Selection.ClearContents
End Sub
Sub MainR()
Dim Rtn As String
Dim X As Long
Rtn = InputBox("発注業者1から100のいずれかを入力してください")
X = Val(Rtn)
Call Code(X + 7)
End Sub
Sub Code(i As Long)
Dim rc As Long
rc = MsgBox(Sheets("発注先").Range("B" & i).Value & _
"、の注文書を作成します。 ", vbYesNo, Title:="発注先は・・・")
If rc = vbNo Then
Else
Application.Goto Reference:="R1C1"
rc = MsgBox("工種項目は、" & Sheets("発注先").Range("J" & i).Value & _
"です。 ", vbYesNo, Title:="発注内容です。")
If rc = vbYes Then
ActiveSheet.Unprotect
Sheets("発注先").Select
Range("A" & i & ":Y" & i).Select
Selection.Copy
Sheets("注文書作成").Select
Range("AN3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("発注先").Select
Application.CutCopyMode = False
Range("A7").Select
Sheets("注文書作成").Select
Range("AN3:BL3").Select
With Selection.Interior
.ColorIndex = 11
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Application.Goto Reference:="R1C1"
Dim Prompt As kt_MsgBoxPromptType
★★ここへ"AO3,AR3,AW3,BL3"にデータがない場合
MsgBox "データがありません"と表示し
データががある場合は↓を表示させたい。
ktMsgBoxは気にしないで下さい普通に[MsgBox]と考えて頂いてOKです。
Call ktMsgBoxPromptTypeInit(Prompt)
With Prompt
.Message(1) = "※発注書作成しました。" & vbCrLf & _
"その他未記入箇所を入力して完成させなさい。" & vbCrLf & ""
.FName(1) = "MS UI Gothic"
.FSize(1) = 14
.FBold(1) = True
.FColor(1) = -1
End With
rc = ktMsgBoxEX(Prompt _
, vbOKOnly + vbCritical, "警告!" _
, BackColor:=&HCCFFCC)
End If
End If
ActiveSheet.Protect DrawingObjects:=True, _
Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
End Sub
|
|