Questione : eccellere il telefono & il fax dell'estratto di vba nel campo di indirizzo

Ho un dispositivo di piegatura dei xlsx & csvs con i dati del fax & del telefono in una colonna di indirizzo che voglio mettere nel loro telefono e fax separati column.

Ideally, penso che le seguenti regole abbiano estratto i dati voluti successfully.

1. Non tutti i numeri appartiene i telefoni (cioè zipcodes) non che tutti i numeri di telefono sono preceduti da qualche cosa che lo identifichi (IE. annotazioni del telefono, di pH, del telefono.) non tutte le hanno un telefono, un fax o un either.

2. Loro sono i numeri successivi del atleast 10+ in un telefono (con i codici internazionali & la composizione possono essere 13-15 numeri) che potrebbe avere alcuni di c'è ne di seguenti separatori [.], [-], [)], [(] o singolo spazio di A [].

3. Il primo avvenimento del filo dei numeri come descritto in #2 è il telefono #, il secondo avvenimento è il fax #.  il


I già è riuscito a fare funzionare uno scritto su un dispositivo di piegatura delle lime. Ho notato appena che sarà insostenibile affinchè me entrasse in annotazioni uno per uno ed estrarre manualmente il telefono ed il fax # ' s poiché ci sono many.
class= del

Risposta : eccellere il telefono & il fax dell'estratto di vba nel campo di indirizzo

Provare quanto segue:

Usa le funzioni dell'utente.

Chris
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
fnValNum di funzione (strInput come stringa) come booleano
'Usa “il tipo biblioteca di espressioni normali di Microsoft VBScript„
regEx fioco come oggetto
    
    Regolare il regEx = CreateObject (“vbscript.regexp„)
    regEx.IgnoreCase = allineano
    regEx.Pattern = “([0-9] [-. ()] *) {10.15}„
    il fnValNum = regEx.test (strInput) = allineano
    
Regolare il regEx = niente
Concludere la funzione

fnGetNum di funzione (strInput come stringa, telNum come booleano) come stringa
'Usa “il tipo biblioteca di espressioni normali di Microsoft VBScript„
regEx fioco come oggetto
colMatch fioco come oggetto
Itm fioco come variante
    
    Se fnValNum (strInput) allora
        Regolare il regEx = CreateObject (“vbscript.regexp„)
        regEx.IgnoreCase = allineano
        regEx.Global = allineano
        regEx.Pattern = “([0-9] [-. ()] *) {10.15}„
        Regolare il colMatch = regEx.Execute (strInput)
        Se telNum allora
            fnGetNum = colMatch (0)
        Altrimenti
            Se colMatch.Count > 1 allora _
                fnGetNum = colMatch (1)
        Concluder se
    Concluder se
    
Regolare il regEx = niente
Concludere la funzione
 
codificare stabilito in lima fornita
 
Altre soluzioni  
 
programming4us programming4us