Condividi:        

informazioni excel

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

informazioni excel

Postdi MOGAB2000 » 23/05/12 20:32

salve, vi chiedo cortesemente di aiutarmi, se possibile, in un problema che ho riscontrato in excel.
allora io ho bisogno di mettere in ordine crescente dei codici con una lettera davanti, esempio: C5,C25,C62,C4,C78....... QUANDO VADO A METTERE IN ORDINE, C5 ME LO METTE DOPO C25, HO PROVATO A CHIEDERE AL MAGAZZINIERE DI INVIARMI I CODICI IN MANIERA DIVERSA, CIOè METTENDO C05 MA MI HA DETTO CHE FA TUTTO TRAMITE UN BADGE CHE CACCIA I CODICI IN QUESTO MODO.....NON SO SE SONO RIUSCITA A FARVI CAPIRE IL MIO PROBLEMA.... SPERO DI SI...GRAZIE
MOGAB2000
Newbie
 
Post: 1
Iscritto il: 22/05/12 10:32

Sponsor
 

Re: informazioni excel

Postdi Francesco53 » 23/05/12 21:36

Ciao se hai i dati nella colonna esempio da B3 a B6, puoi usare in D3:
Codice: Seleziona tutto
=SE(LUNGHEZZA(B3)=2;SINISTRA(B3;1)&"0"&DESTRA(B3;1);B3)

Poi copi verso il basso o come ti serve e fai il sort.
Francesco
S.O. Windows 10 e Office 2007
Avatar utente
Francesco53
Utente Senior
 
Post: 811
Iscritto il: 20/02/10 18:45

Re: informazioni excel

Postdi Flash30005 » 23/05/12 21:44

Ciao MOGAB2000 e benvenuta nel Forum

Leggi quanto suggerito da Francesco53

però suppongo che i codici da te postati siano solo un esempio e magari hanno più cifre rispetto all'esempio
e la formula non funziona più
pertanto ti dò due consigli
1) invia esempi veritieri dei codici che hai ed eventualmente loro posizione (colonna, riga)
2) non scrivere in maiuscolo nei messaggi (equivale a urlare)
3) segui qusta procedura quando posti messaggi


ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: informazioni excel

Postdi Anthony47 » 24/05/12 00:04

Ciao MOGAB2000, benvenuta anche da parte mia.
Se i tuoi dati sono in colonna A, da riga 2 in avanti, in una colonna libera usa questa formula per calcolare un nuovo codice dove la parte numerica e' presentata su 3 digit; es C5 diventera' C005:
Codice: Seleziona tutto
=SINISTRA(A2;1)&TESTO(STRINGA.ESTRAI(A2;2;99);"000")
Copia poi verso il basso; infine ordina l' intera tabella ma usando questa colonna come chiave per l' ordinamento.
Si tratta dello stesso approccio suggerito da Francesco (vedi sopra), solo piu' generico e in grado di gestire numeri fino a 999.

Prova e fai sapere, ed eventualmente allega uno screenshot dei tuoi dati; ; guarda qui per come fare: viewtopic.php?f=26&t=80395
Per allegare il link dovrai avere almeno tre messaggi pubblicati, eventualmente scrivine qualcuno solo per arrivare a tre...

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: informazioni excel

Postdi wallace&gromit » 26/05/12 11:54

Ciao a tutti,
forse arrivo oltre il tempo massimo, però inserisco qui una macro (in parte scopiazzata da un forum "concorrente" e in parte affinata da me) che potrebbe servire: permette di ordinare delle serie alfanumeriche nel modo giusto:
- prima tutti i codici che iniziano con valori numerici
- se ci sono codici tipo 1, 1a, 1b, 1c andranno in quest'ordine e tutti prima di 2
- poi arrivano i codici che iniziano con un testo e in questo caso l'ordine sarà a1, a2, b1
tutto questo indipendentemente dalla lunghezza del testo e del valore numerico (si richiedono però sequenze senza spazi in cui vi sia prima solo testo poi solo numeri o viceversa: codici tipo X2RS8W9 sono un po' troppo complicati!).
Si considerano dati nella colonna A a partire da A1 e si utilizzano come colonne d'appogio CW e CX, tutto quello che sta in mezzo viene ordinato assieme alla colonna A.
Codice: Seleziona tutto
Sub OrdinaNumeriLettere3()
Dim Area As Range
Dim Cl As Range, i As Long, NR As String, PR As String
Dim ctr As Boolean
With Sheets("foglio1")
Set Area = .Range("A1", .Range("A1").End(xlDown))
For Each Cl In Area
    For i = 1 To Len(Cl)
    If i = 1 And Not IsNumeric(Mid(Cl, i, 1)) Then
       Do While Not IsNumeric(Mid(Cl, i, 1))
       PR = Mid(Cl, 1, i)
        i = i + 1
       Loop
       Cl.Offset(0, 100).Value = PR
        Cl.Offset(0, 101).Value = Mid(Cl, i, Len(Cl))
        PR = ""
    ctr = 1
    ElseIf IsNumeric(Mid(Cl, i, 1)) Then
    NR = NR & Mid(Cl, i, 1)
    End If
    Next i
If Not ctr Then
NR = NR & Mid(Cl, i, 1)
Cl.Offset(0, 100).Value = NR
Cl.Offset(0, 101).Value = 0.1
NR = ""
End If
ctr = 0
Next Cl
Set Area = Nothing
Set Area = .Range("A1", .Range("CX1").End(xlDown))
Area.Sort Key1:=Range("CW1"), Order1:=xlAscending, Key2:=Range("CX1"), Order2:=xlAscending
Columns(101).ClearContents
Columns(102).ClearContents
Set Area = Nothing
End With
End Sub
Office2016 + 2019 su win11
Avatar utente
wallace&gromit
Utente Senior
 
Post: 2174
Iscritto il: 16/01/12 14:21


Torna a Applicazioni Office Windows


Topic correlati a "informazioni excel":


Chi c’è in linea

Visitano il forum: Nessuno e 29 ospiti