Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Inserire separatore di testo all'interno di un casella testo

Ultimo Aggiornamento: 08/02/2017 16:17
Post: 1
Registrato il: 08/02/2017
Città: ANCONA
Età: 41
Utente Junior
Excel 2017 per Mac
OFFLINE
08/02/2017 11:25

Inserire un separatore ogni x caratteri in una casella di testo
Ciao a tutti,

purtroppo non riesco a trovare una formula che mi permetta di inserire una virgola, o un altro carattere, per delimitare i codici che ho all'interno di una stessa casella di testo.
Le caselle hanno lunghezze diverse tra loro, ma tutti i codici sono lunghi 9 caratteri.
Esempi:
1)
formato attuale G06Q10/06G06Q10/08
formato desiderato G06Q10/06,G06Q10/08

2)
formato attuale C04B14/38C04B16/06E02D27/28
formato desiderato C04B14/38,C04B16/06,E02D27/28

Nel caso sopra ho messo una virgola, ma qualsiasi altro carattere potrebbe andare bene.
Qualcuno saprebbe aiutarmi?
Grazie del vostro tempo.
Raoul
[Modificato da Raoul(82) 08/02/2017 11:29]
Post: 2.720
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Veteran
Excel 365
OFFLINE
08/02/2017 11:50

Ciao Raoul

Per poter provare di tentare di aiutarti dovresti allegare un file di esempio dove mostri il risultato che vuoi ottenere inserito manualmente.

Alfredo
Post: 1
Registrato il: 08/02/2017
Città: ANCONA
Età: 41
Utente Junior
Excel 2017 per Mac
OFFLINE
08/02/2017 12:13

Ciao Alfredo

Tra l'altro credevo che tutti i codici fossero lunghi 9 caratteri, invece l'unico elemento comune è la doppia cifra dopo la slash (/).
In allegato ho inserito un esempio che spero chiarisca la mia problematica.
Grazie.
Raoul
Post: 1.952
Registrato il: 21/03/2008
Città: LOCATE VARESINO
Età: 76
Utente Veteran
2007 / 13
OFFLINE
08/02/2017 13:46

ciao

funzione da inserire in un modulo di VBA


Option Explicit
Function Inserisci(ByVal testo As Range, carat As String) As String
Application.Volatile
Dim TS As Variant
Dim i As Long, conta As Integer
Dim T_esto As String
conta = 0
T_esto = ""
For i = 1 To Len(testo)
T_esto = T_esto & Mid(testo, i, 1)
TS = Mid(testo, i, 1)
If conta >= 1 Then conta = conta + 1
If conta = 3 Then
T_esto = T_esto & carat
conta = 0
End If
If TS = "/" Then conta = conta + 1
Next
Inserisci = T_esto
End Function




utilizzo


=inserisci(A2;",")



Risultato

G06Q10/06,G06Q10/08,
H04L29/08,
B29C47/92,G02B5/18,G02B27/22,
B29C39/10,E04C3/26,E04C3/34,E04C5/07,


Ciao da locate
excel 2007 / 13
Post: 2
Registrato il: 08/02/2017
Città: ANCONA
Età: 41
Utente Junior
Excel 2017 per Mac
OFFLINE
08/02/2017 16:05

Ciao Locate,

ho inserito il modulo che mi hai consigliato.
Quando digito il comando mi appare già nel completamento automatico, però nell'esecuzione mi compare l'avviso "La funzione utilizzata non è valida".
Sto sbagliando qualcosa?
Grazie del tuo tempo.
Raoul.
Post: 1.954
Registrato il: 21/03/2008
Città: LOCATE VARESINO
Età: 76
Utente Veteran
2007 / 13
OFFLINE
08/02/2017 16:17

ciao

tale funzione va inserita in un modulo standar, e non quello del foglio


comunque ti riallego il tuo file postato con la funzione gia' inserita e attivata in colonna C per farti vedere

Ciao da locate
excel 2007 / 13
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 18:32. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com