Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Nell'attesa del secondo tempo della partita ...
Non ho idea di come siano posizionati i dati da cui estrarre i numeri ma questa che segue:
'<----
Function EstraiDueNumeri(stringa As String) As Variant
Dim oRegExp As Object: Set oRegExp = CreateObject("VBScript.RegExp")
Dim oMatchs As Object
Const srcPat1 = "^Week \d{1,}" '<--- cerca le strighe che iniziano per Week seguite da un numero
Const srcPat2 = "\d{1,}" '<---cerca i soli numeri nella stringa
Dim i As Long
Dim bMatch As Boolean
Dim arrNumeri(1 To 2, 1 To 1) As Variant
With oRegExp
.Global = True
.IgnoreCase = False
.Pattern = srcPat1
bMatch = .Test(stringa)
If bMatch Then
stringa = .Replace(stringa, "")
.Pattern = srcPat2
Set oMatchs = .Execute(stringa)
If oMatchs.Count = 2 The n
For i = 0 To 1
arrNumeri(i + 1, 1) = CDbl(oMatchs(i))
Next i
End If
End If
End With
EstraiDueNumeri = arrNumeri
Set oRegExp = Nothing
End Function
'<----
è una funzione (FDU), presente nel Modulo1 del progetto VBA della cartella di lavoro, il cui argomento è una stringa di testo, e che se trova come testo iniziale Week # (dove # rappresenta un numero) estrae, se presenti, i primi due numeri successivi e li restituisce sotto forma di una matrice di due "righe" per una "colonna".
Nel file di cui al seguente link:
vedi come inserendo in forma matriciale la formula nelle due celle sottostanti i testi presenti in riga 1, celle vengono restituiti i numeri, ove presenti, dopo il testo Week e relativo numero di settimana.
Questa funzione potrebbe essere utilizzata con una procedura VBA che richiami il testo presente nelle celle ed estragga i due numeri da riportare in un foglio.
ciao
edit: ho modificato la condizione, evidenziata in grassetto, impostando da "> 0" a "= 2"