Soluzione temporanea
Ecco la soluzione temporanea che mi è venuta in mente.
Formula di lavoro
Usa questa formula:
`=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)`
Sostituire 3
con la lunghezza dell'imbottitura e 0
con il carattere dell'imbottitura. A2
è una fonte di imbottitura.
Spiegazione
Considera il seguente foglio di calcolo:
-------------
| A | B |
-------------
| 1 | 001 |
-------------
| 2 | 002 |
-------------
| 31 | 031 |
-------------
| 45 | 045 |
-------------
| 500 | 500 |
-------------
Abbiamo la colonna iniziale (A) con numeri interi che vogliamo riempire. La colonna (B) conterrà la formula speciale per elaborare i dati.
Concatenare!
Prima di tutto abbiamo bisogno di un modo per concatenare il valore dalla A
colonna con la stringa di riempimento. Possiamo farlo con la CONCATENATE
funzione:
=CONCATENATE("00", A2)
Ripetere!
In questo momento, il carattere di riempimento 0
viene ripetuto due volte nella nostra formula. Questo non è un bene. Possiamo usare la REPT
funzione per ripetere il nostro carattere di riempimento più volte in questo modo:
=REPT("0", 2)
Questa formula si ripeterà 0
due volte. Combiniamoli:
=CONCATENATE(REPT("0", 2), A2)
Calcola la lunghezza!
Va meglio. Ma la lunghezza del riempimento ha un valore costante nella nostra formula e non funzionerà con numeri maggiori di 9. Possiamo risolverlo calcolando la lunghezza della stringa imbottita (usando la LEN
funzione) e sottraendola dalla nostra lunghezza target:
=3-LEN(A2)
Aggiungiamolo alla nostra formula:
=CONCATENATE(REPT("0", 3-LEN(A2)), A2)
Tuttavia, otterremo risultati negativi per valori superiori a 999 e interromperà la REPT
funzione (il numero di ripetizioni non può essere negativo).
Possiamo facilmente risolverlo aggiungendo una condizione:
=IF(LEN(A2)<3, "APPLY REPT", "OUTPUT AS IS")
Mettiamo insieme le ultime paci:
=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)