Estrarre un Numero da un campo

di il
5 risposte

Estrarre un Numero da un campo

Ciao a tutti
Sono nuovo del forum
Ho un campo contenente del testo e qualche numero
Ho la necessità di estrarre un numero presente in un campo, che contiene del testo e qualche numero, ho un numero di 7 cifre all'interno lo devo isolare e poterlo esportare in un altro campo
-il numero non ha mai una posizione precisa
-non è l'unico numero
-è l'unico numero che ha 7 cifre
-non ci sono numeri superiori a 7 cifre
esiste la possibilità di cancellare tutto il testo e i numeri che non soddisfano il criterio delle 7 cifre ?
grazie del supporto
Ciao Paolo

5 Risposte

  • Re: Estrarre un Numero da un campo

    Che hai un numero lo abbiamo capito...
    Sembra un problema scolastico. .. che dici mi sbaglio..?

    Compreso il problema... mostraci il tuo approccio, cosa hai fatto e che anomalie hai ottenuto...
    Lo sai certamente, perché hai letto il regolamento, che il forum non fornisce codice pronto... quindi esponi il tuo tentativo...
  • Re: Estrarre un Numero da un campo

    Alex
    Al momento dato che ho poche centinaia di record mi sono limitato a filtrare le prime 7 da destra e poi le 7 da sinistra per una prima scrematura, e fortunatamente il 90% ricade in questa casistica, purtroppo per i rimanenti record ne faccio una verifica manuale, lo so che non è professionale ma questo è quanto, non sono alla ricerca di codice pronto ma di alcuni spunti che mi possano indirizzare
    Ciao
    Paolo


    Inviato da mio iPad utilizzando Tapatalk
  • Re: Estrarre un Numero da un campo

    Non mi vengono in mente molte cose non conoscendo la composizione della stringa... pensavo a replace ma da usare con Regexp in modo che sostituisca i gruppi di numeri<7 e le lettere con Nullstriing. .. ma non riesco a darti un pattern per farlo....
    Forse sarebbe più semplice estrarre i 7 numeri direttamente sempre con Regexp
  • Re: Estrarre un Numero da un campo

    Ciao Paolo ed Alessandro...
    ed una soluzione un po' vintage cosi : (....meglio la prima a questo punto...)

    un saluto.
    
    Sub extractNumber3()
    
    Dim strString As String, strNumber As String
    Dim i As Integer
    strString = "asvas74777vasdvasdvdavvvv88svdas7654321asvasdvdasvasdvdasv"
    i = 1
    Do While Len(strNumber) < 7
      If Val(Mid(strString, i, 1)) Then
         strNumber = strNumber & Mid(strString, i, 1)
      Else
        If Len(strNumber) > 0 Then strNumber = ""
      End If
      i = i + 1
    Loop
    
    Debug.Print strNumber
    
    End Sub
    
    [code]
    Sub extractNumber()
    
    Dim strString As String, strNumber As String
    Dim i As Integer
    strString = "asvas74777vasdvasdvdavvvv88svdas7654321asvasdvdasvasdvdasv"
    
    For i = 1 To Len(strString)
      If Len(strNumber) = 7 Then Exit For
      If Asc(Mid(strString, i, 1)) > 47 And Asc(Mid(strString, i, 1)) < 58 Then
          strNumber = strNumber & Mid(strString, i, 1)
      End If
      If Len(strNumber) > 0 And Not (Asc(Mid(strString, i, 1)) > 47 And Asc(Mid(strString, i, 1)) < 58) Then
        strNumber = ""
      End If
    Next
    
    Debug.Print strNumber
    
    End Sub
    
    
  • Re: Estrarre un Numero da un campo

    Grazie mille, lo testerò presto


    Inviato da mio iPad utilizzando Tapatalk
Devi accedere o registrarti per scrivere nel forum
5 risposte