Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione di dati
Ciao Giorgio,
scusami in anticipo
ma se volessi fare questa operazione con un pulsante ?
ovviamente ho provato ed ovviamente ho un errore :-D
Per utilizzare un pulsante, incolla il seguente codice leggermente modificato in un modulo standard:
'========>>
Option Explicit
'-------->>
Public Sub Tester()
Dim SH As Worksheet
Dim oTabella As ListObject
Dim oListCol As ListColumn
Dim Rng As Range, Rng2 As Range, rCell As Range
Dim arrScaduto() As Variant
Dim sMsg As String
Dim iCtr As Long
Const sFoglio As String = "Foglio1" '<<=== Modifica
Const sTabella As String = "Tabella1" '<<=== Modifica
Const iPrima\_Riga As Long = 5 '<<=== Modifica
Set SH = ThisWorkbook.Sheets(sFoglio)
Set oTabella = SH.ListObjects(sTabella)
Set oListCol = oTabella.ListColumns("Scadenza sub")
Set Rng = oListCol.DataBodyRange
For Each rCell In Rng.Cells
With rCell
If IsDate(.Value) Then
If .Value < Date Then
iCtr = iCtr + 1
ReDim Preserve arrScaduto(1 To iCtr)
arrScaduto(iCtr) = .Address(0, 0) & vbTab & .Offset(0, -10).Value
End If
End If
End With
Next rCell
If CBool(iCtr) Then
sMsg = "I seguenti record sono scaduti" & vbNewLine & vbNewLine & Join(arrScaduto, vbNewLine)
End If
Call MsgBox(Prompt:=sMsg, \_
Buttons:=vbInformation, \_
Title:="REPORT")
End Sub
'<<========
Dopo aver assegnato questo codice al tuo pulsante, puoi facoltativamente eliminare il codice precedente. Se mantieni il codice esistente, l'avviso di scadenza apparirà anche quando apri il file.
===
Regards,
Norman