Torna indietro   Hardware Upgrade Forum > Software > Programmi e Utility

Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti
Zeekr sbarca ufficialmente in Italia con tre modelli elettrici premium, X, 7X e 001, distribuiti da Jameel Motors su una rete di 52 punti vendita già attivi. La Zeekr X parte da 39.900 euro, la 7X da 54.100: piattaforma a 800V, chip Snapdragon di ultima generazione, ricarica ultraveloce e un'autonomia dichiarata fino a 615 km WLTP. Le prime consegne sono previste a metà aprile
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-04-2005, 12:50   #1
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Software o macro per riordinare un testo...

Ciao a tutti!
Uso un programma per il mio nokia6600 che mi trasforma in formato .txt tutti gli sms che ho.Il problema è che me li ordina (a1-Mittente,a2-Data,a3-Testo sms;b1-Mittente,b2-Data...e così via) dall'ultimo ricevuto al primo.
Ora io vorrei invertirli.In maniera da avere all'inizio del testo il primo messaggio avuto,il secondo ecc...
Volevo sapere ora sa se c'è un software per pc o un metodo con l'excel che mi ordini il testo in questa maniera:
Prima
z1
z2
z3
w1
w2
w3
.
.
.
b1
b2
b3
a1
a2
a3

Dopo
a1
a2
a3
b1
b2
b3
.
.
.
w1
w2
w3
z1
z2
z3

es.:
a1(Mittente)"Federico"
a2(Data) "12-Marzo-2005"
a3(Testo) "Ciao che fai...."

Spero che capiate il mio schema!

Grazie in anticipo per l'aiuto!
Vascoblu

Ultima modifica di vascoblu : 07-04-2005 alle 13:54.
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 15:45   #2
zei78
Senior Member
 
L'Avatar di zei78
 
Iscritto dal: Sep 2002
Città: Savona
Messaggi: 636
prova ad importare il file di testo in excel ed a ordinare i dati.... c'è proprio il pulsantino che ti permette di farlo
zei78 è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 16:43   #3
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Quote:
Originariamente inviato da zei78
prova ad importare il file di testo in excel ed a ordinare i dati.... c'è proprio il pulsantino che ti permette di farlo
L'ho importato in excel, ma per quello che devo fare il tasto ordinamento non va'!Ci vorrebbe qualche comando che mi faccia questo:

dal foglio 1 (composto da 562 righe):
A1 z1
A2 z2
A3 z3
..
A560 a1
A561 a2
A562 a3

devo ordinaresul foglio 2 le righe in modo da avere questo:

A1 =Foglio1!A560
A2 =Foglio1!A561
A3 =Foglio1!A562
...
A560 =Foglio1!A1
A561 =Foglio1!A2
A562 =Foglio1!A3


Ultima modifica di vascoblu : 07-04-2005 alle 16:55.
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 17:50   #4
zei78
Senior Member
 
L'Avatar di zei78
 
Iscritto dal: Sep 2002
Città: Savona
Messaggi: 636
ehmm.... senti, se ti dico che prima mi sembrava di aver capito ma in realtà non ci ho capito nulla????

Potresti spiagarti in un altro modo? magari un paio di esempi....
zei78 è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 18:15   #5
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Allora...Ho questo programma per il mio nokia6600 che mi crea un file .txt con tutti i miei messaggi in questa maniera:

z1)Marco
z2)7-4-2005 17.55
z3)Sto bene grazie...
w1)Giuseppe
w2)7-4-2005 17.50
w3)Ciao Marco come stai...
.
.
.
b1)Marco
b2)10-1-2005 14.30
b3)Ho pranzato...
a1)Alessia
a2)10-1-2005 14.20
a3)Ciao Marco hai pranzato...

(Le lettere rappresentano un sms composto da 1=Mittente,2=Data,3=Testo sms)

Se noti le date il programma mi mette prima i messaggi ultimi ricevuti ed infine i primi ricevuti.

Ora vorrei ordinare in maniera da invertire l'ordine in questa:

a1)Alessia
a2)10-1-2005 14.20
a3)Ciao Marco hai pranzato...
b1)Marco
b2)10-1-2005 14.30
b3)Ho pranzato...
.
.
.
w1)Giuseppe
w2)14-2-2005 17.50
w3)Ciao Marco come stai...
z1)Marco
z2)14-2-2005 17.55
z3)Sto bene grazie...

Ho esportato il tutto in excel ed ora dovrei cercare il modo di ordinare il tutto in automatico...Spero si possa fare!

Spero di essere stato chiaro!
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 18:55   #6
zei78
Senior Member
 
L'Avatar di zei78
 
Iscritto dal: Sep 2002
Città: Savona
Messaggi: 636
Ho capito ma penso che l'unico modo per farlo sia scrivere una macro.....

Prova magari a chiedere in programmi e utility, di sicuro ne sanno di più...
zei78 è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 19:04   #7
zei78
Senior Member
 
L'Avatar di zei78
 
Iscritto dal: Sep 2002
Città: Savona
Messaggi: 636
Comunque credo che se sai un pò di VB sia abbastanza facile....

Direi che ti bastano un paio di for concatenati, i comandi saranno una cosa del genere:

Sheets("Foglio2").Select
ActiveSheet.Cells(1, 3) = Sheets("Foglio1").Cells(3, 1)
zei78 è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 19:12   #8
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Quote:
Originariamente inviato da zei78
Comunque credo che se sai un pò di VB sia abbastanza facile....

Direi che ti bastano un paio di for concatenati, i comandi saranno una cosa del genere:

Sheets("Foglio2").Select
ActiveSheet.Cells(1, 3) = Sheets("Foglio1").Cells(3, 1)
Purtroppo non ne so di VisualBasic!
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 19:46   #9
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Io avevo pensato ad un comando che faccia questo:

Se ho, ad esempio, 2337 righe in un primo foglio, deve tagliare ed incollare nella prima riga vuota del secondo folglio la terz'ultima riga (2335) del primo foglio,poi la penultima (2336) nella prima riga vuota (a logica dovrebbe posizionarsi in A2 visto che A1 è stata occupata in precedenza) ed infine l'ultima (2337) nella prima riga vuota del secondo foglio.Il primo ciclo si chiude così per iniziare di nuovo,ma con il primo foglio con 2334 righe e considerando poi la riga 2332 la terz'ultima,la 2333 la penultima e la 2334 l'ultima.Deve ripetersi così fino a tagliare ed incollare tutte le righe del primo foglio nel secondo!
Spero di essere stato chiaro!

C'è qualcuno che può darmi una mano a farlo?
Premetto che non so nulla di VisualBasic in excel!
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 07-04-2005, 21:01   #10
Kewell
Senior Member
 
L'Avatar di Kewell
 
Iscritto dal: Jan 2002
Messaggi: 32713
Spostato da discussioni generiche.
__________________
| Front & Rear: Arbour 5.02 | Center: Arbour C.4 | Sub: Arbour S.10 | Ampli: Onkyo TX-SR607 | Video: Panasonic TX-L47DT50 | Recorder: TS-6600HD |
Sorgente Video: Raspberry PI & Openelec + QNAP TS-869L WD Red 4x4TB | Musica Liquida: Squeezebox Touch | Remote Control: Harmony One |
Kewell è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 11:07   #11
guldo76
Senior Member
 
L'Avatar di guldo76
 
Iscritto dal: Nov 2002
Città: Morio Cho
Messaggi: 2598
Codice:
Sub riordina()

'IMPOSTAZIONI
Set primoFoglio = Sheets("Foglio1")
Set cellaIniziale = primoFoglio.Range("A1")
Set secondoFoglio = Sheets("Foglio2")
elemNum = 3 'gruppi di 3 elementi l'uno

'CALCOLI
primoFoglioConta = _
    cellaIniziale.End(xlDown).Row + 1 - cellaIniziale.Row
secondoFoglioConta = _
    secondoFoglio.Cells(1, 1).End(xlDown).Row + 1 - secondoFoglio.Cells(1, 1).Row
cellValue = secondoFoglio.Cells(1, 1)

If secondoFoglioConta = 65536 Then
    If IsEmpty(cellValue) Then
        Set myCella = secondoFoglio.Cells(1, 1)
    Else
        Set myCella = secondoFoglio.Cells(2, 1)
    End If
Else
    Set myCella = secondoFoglio.Cells(1, 1).End(xlDown).Offset(1, 0)
End If

For i = primoFoglioConta To elemNum Step -elemNum
    For j = (elemNum - 1) To 0 Step -1
        myCella.Offset(primoFoglioConta + elemNum - i - j - 1, 0) = _
        primoFoglio.Cells(i - j, 1)
    Next j
Next i

End Sub
guldo76 è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 11:45   #12
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Quote:
Originariamente inviato da guldo76
Codice:
Sub riordina()

'IMPOSTAZIONI
Set primoFoglio = Sheets("Foglio1")
Set cellaIniziale = primoFoglio.Range("A1")
Set secondoFoglio = Sheets("Foglio2")
elemNum = 3 'gruppi di 3 elementi l'uno

'CALCOLI
primoFoglioConta = _
    cellaIniziale.End(xlDown).Row + 1 - cellaIniziale.Row
secondoFoglioConta = _
    secondoFoglio.Cells(1, 1).End(xlDown).Row + 1 - secondoFoglio.Cells(1, 1).Row
cellValue = secondoFoglio.Cells(1, 1)

If secondoFoglioConta = 65536 Then
    If IsEmpty(cellValue) Then
        Set myCella = secondoFoglio.Cells(1, 1)
    Else
        Set myCella = secondoFoglio.Cells(2, 1)
    End If
Else
    Set myCella = secondoFoglio.Cells(1, 1).End(xlDown).Offset(1, 0)
End If

For i = primoFoglioConta To elemNum Step -elemNum
    For j = (elemNum - 1) To 0 Step -1
        myCella.Offset(primoFoglioConta + elemNum - i - j - 1, 0) = _
        primoFoglio.Cells(i - j, 1)
    Next j
Next i

End Sub

Cavoli!
Tante grazie!!!!
Ora come faccio a fargli fare questo lavoro?Come lo inserisco?

Tante grazie ancora Guldo76!!!
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 11:50   #13
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Sono riuscito a farlo partire!
Solo c'è un problema con le date!Ci mette numeri al loro posto.
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 12:22   #14
guldo76
Senior Member
 
L'Avatar di guldo76
 
Iscritto dal: Nov 2002
Città: Morio Cho
Messaggi: 2598
Hai controllato il formato della colonna dove vanno a finire le date?
guldo76 è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 12:26   #15
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Quote:
Originariamente inviato da guldo76
Hai controllato il formato della colonna dove vanno a finire le date?
Il tuo script (e ti ringrazio davvero tanto) fa quello che volevo!Solo che le date le sostituisce con numeri strani tipo 38247,7319444444.
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 12:30   #16
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Non so se ti puo' servire ma il formato di una data è del tipo"21/09/2004 1.47"
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 12:42   #17
guldo76
Senior Member
 
L'Avatar di guldo76
 
Iscritto dal: Nov 2002
Città: Morio Cho
Messaggi: 2598
Queste date stanno da sole in un'apposita colonna, giusto?
Devi impostare il formato della cella su "data", invece che "generico".
Il numero "strano" che vedi è il numero seriale che indica la data.
XL non capisce nativamente le date; conta quanti giorni (ore, minuti, secondi) sono passati da un punto di partenza predefinito (1/1/1900).
guldo76 è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 12:50   #18
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Grazie tantissimo!!!
Risolto!
Cmq io per prova avevo cambiato le date in questo formato "01/12/2004-23.54"aggiungendo il trattino ed andava!!!Poi con trova e sostituisci ho sistemato la data.

Grazie ancora!
vascoblu è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 13:08   #19
guldo76
Senior Member
 
L'Avatar di guldo76
 
Iscritto dal: Nov 2002
Città: Morio Cho
Messaggi: 2598

Che brutta soluzione...
Molto meglio cambiare l'ultimo blocco For del listato di prima con questo:
Codice:
For i = primoFoglioConta To elem_num Step -elem_num
    For j = (elem_num - 1) To 0 Step -1
        myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0) = _
        primoFoglio.Cells(i - j, 1)
        If IsDate(primoFoglio.Cells(i - j, 1).Value) Then
            myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0).NumberFormat = "dddd dd/mm/yyyy hh:mm"
            'myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0).HorizontalAlignment = xlLeft
        End If
    Next j
Next i
Naturalmente puoi modificare il formato della data come più ti pare e piace; se vuoi la data allineata a sinistra come il testo, togli l'apostrofo iniziale dalla riga successiva (quella che finisce con "xlLeft").
guldo76 è offline   Rispondi citando il messaggio o parte di esso
Old 08-04-2005, 13:21   #20
vascoblu
Member
 
Iscritto dal: May 2002
Città: Foggia
Messaggi: 208
Quote:
Che brutta soluzione...
Putroppo non conoscendo bene l'excel ed il VB mi sono adattato!


Putroppo la nuova soluzione che mi hai dato non va!Non fa nulla

Sub riordina()

'IMPOSTAZIONI
Set primoFoglio = Sheets("Foglio1")
Set cellaIniziale = primoFoglio.Range("A1")
Set secondoFoglio = Sheets("Foglio2")
elemNum = 3 'gruppi di 3 elementi l'uno

'CALCOLI
primoFoglioConta = _
cellaIniziale.End(xlDown).Row + 1 - cellaIniziale.Row
secondoFoglioConta = _
secondoFoglio.Cells(1, 1).End(xlDown).Row + 1 - secondoFoglio.Cells(1, 1).Row
cellValue = secondoFoglio.Cells(1, 1)

If secondoFoglioConta = 65536 Then
If IsEmpty(cellValue) Then
Set myCella = secondoFoglio.Cells(1, 1)
Else
Set myCella = secondoFoglio.Cells(2, 1)
End If
Else
Set myCella = secondoFoglio.Cells(1, 1).End(xlDown).Offset(1, 0)
End If

For i = primoFoglioConta To elem_num Step -elem_num
For j = (elem_num - 1) To 0 Step -1
myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0) = _
primoFoglio.Cells(i - j, 1)
If IsDate(primoFoglio.Cells(i - j, 1).Value) Then
myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0).NumberFormat = "dddd dd/mm/yyyy hh:mm"
'myCella.Offset(primoFoglioConta + elem_num - i - j - 1, 0).HorizontalAlignment = xlLeft
End If
Next j
Next i

End Sub

Ultima modifica di vascoblu : 08-04-2005 alle 13:24.
vascoblu è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
Disponibili i video e le immagini in alt...
La NASA ha rilasciato le prime fotografi...
Cometa interstellare 3I/ATLAS: l'ESA dif...
Kodak PIXPRO AZ653: la fotocamera bridge...
Monitor da gaming: Samsung si conferma l...
The Duskbloods potrebbe arrivare a fine ...
Il miglior pesce d'aprile del mondo Linu...
Monopattini elettrici a 62 km/h fermati ...
OpenAI porta la modalità vocale d...
Mercedes-Benz introduce lo steer-by-wire...
Hacker agli Uffizi, il museo smentisce: ...
Nvidia mostra il futuro della grafica co...
Windows 11, scattano gli aggiornamenti f...
TIM lancia l'offerta di Pasqua: Giga ill...
Prime foto reali per OPPO Find X9 Ultra:...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:27.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v