Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ciao Nicola,
Ciao Norman, ciao Gianfranco.
Il mio amico sentito poco fa mi ha confermato che la verifica del dato inserito nella InputBox deve essere verificato in un range definito.
Nel suo caso la verifica riguarda la colonna C:C.
Spero di essere stato chiaro.
Quindi Norman, come va modificato la tua routine per eseguire il controllo del dato nella colonna C:C
Prova qualcosa del genere:
'========>>
Option Explicit
'-------->>
Public Sub Tester()
Dim WB As Workbook
Dim SH As Worksheet
Dim FindRng As Range, srcRng As Range, destRng As Range
Dim vVal As Variant
Dim sMsg As String
Dim iButtons As Long
Dim bFlag As Boolean
Const sFoglio As String = **"Foglio1" '<<=== Modifica**
Const sCella\_Destinazione As String = **"A1" '<<=== Modifica**
Const sColonna\_Ricerca As String = **"C:C" '<<=== Modifica**
Set WB = ThisWorkbook
Set SH = WB.Sheets(sFoglio)
With SH
Set srcRng = .Range(sColonna\_Ricerca)
Set destRng = .Range(sCella\_Destinazione)
End With
vVal = Application.InputBox(Prompt:="Inserisci il valore da verificare", Title:="VALORE di RICERCA", Default:=10, Type:=3)
If vVal = False Then
sMsg = "Hai cancellato!"
iButtons = vbCritical
GoTo XIT
ElseIf vVal = vbNullString Then
sMsg = "Non Hai fornito un valore!"
iButtons = vbCritical
GoTo XIT
End If
Set FindRng = srcRng.Find( \_
What:=vVal, LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
If Not FindRng Is Nothing Then
sMsg = "Il valore " & vVal & " esiste gia nella cella " & FindRng.Address(0, 0)
iButtons = vbInformation
Else
destRng.Value = vVal
sMsg = "Il valore della cella " & sCella\_Destinazione & " è stato cambiato in " & vVal
iButtons = vbInformation
End If
XIT:
Call MsgBox(Prompt:=sMsg, \_
Buttons:=iButtons, \_
Title:="REPORT")
End Sub
'<<========
Ho aggiornato il mio file di prova Nicola20230413.xlsm
===
Regards,
Norman