Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Per diversi giorni il Galaxy S26 Ultra di Samsung è stato il nostro compagno di vita. Oltre alle conferme del colosso coreano come la qualità del display e una suite AI senza rivali, arriva il Privacy Display, un unicum nel mondo smartphone. Ci sono ancora alcuni gap che non sono riusciti a colmare lato batteria e fotocamera, seppur con alcuni miglioramenti.
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Abbiamo provato per voi il nuovo DLC lanciato a sorpresa da Blizzard per Diablo II: Resurrected e quella che segue è una disamina dei nuovi contenuti che abbiamo avuto modo di sperimentare nel corso delle nostre sessioni di gioco, con particolare riguardo per la nuova classe dello Stregone
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-04-2009, 10:53   #1
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
[Macro excel] Problemi con gli a capo durante la lettura di un file

Ciao a tutti ho un problema con una macro excel in cui devo leggere un file .csv ( in pratica un file di testo separato da virgole).
In pratica nei file forniti in input al programma alcuni hanno solo il LF(ASCII 10) e altri hanno sia CR(ASCII 13) che LF(ASCII 10) alla fine della riga...
Il mio problema e' quindi come leggere correttamente riga per riga questo file con una macro VB in excel?

grazie
ciao
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
Old 27-04-2009, 11:42   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Ad esempio così... :

Codice:
    'ASCII 10 = costante vbLf
    'ASCII 13 = costante vbCr
    
    Dim strInput As String
    strInput = vbLf & "Stringa Pulita" & vbLf & vbCr
    
    MsgBox strInput
    
    Dim strOutput As String
    strOutput = strInput
    Dim arrayCharsNA() As Variant
    arrayCharsNA = Array(vbLf, vbCr)
    Dim i As Integer
    For i = 0 To UBound(arrayCharsNA)
        strOutput = Replace(strOutput, arrayCharsNA(i), "")
    Next i
    
    MsgBox strOutput
arrayCharsNA contiene tutti i caratteri indesiderati da eliminare.
Meglio se parametrizzata in una Function...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 27-04-2009, 14:51   #3
frizzo28
Senior Member
 
Iscritto dal: Aug 2005
Città: Roma sud
Messaggi: 590
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Ad esempio così... :

Codice:
    'ASCII 10 = costante vbLf
    'ASCII 13 = costante vbCr
    
    Dim strInput As String
    strInput = vbLf & "Stringa Pulita" & vbLf & vbCr
    
    MsgBox strInput
    
    Dim strOutput As String
    strOutput = strInput
    Dim arrayCharsNA() As Variant
    arrayCharsNA = Array(vbLf, vbCr)
    Dim i As Integer
    For i = 0 To UBound(arrayCharsNA)
        strOutput = Replace(strOutput, arrayCharsNA(i), "")
    Next i
    
    MsgBox strOutput
arrayCharsNA contiene tutti i caratteri indesiderati da eliminare.
Meglio se parametrizzata in una Function...
Ti ringrazio per l'aiuto alla fine ho risolto cosi'...:
Comunque mi hai dato una buona idea su come risolvere... alla fine ho risolto cosi':
Codice:
appo = ""
'Leggo tutto il file
Open ThisWorkbook.Path & "\" & cFilename For Input As #1
Do
Line Input #1, linea

appo = appo & linea & "#END#"

Loop Until EOF(1) = True
Close (1)
'sostituisco tutti i CR che potrebbero dare problemi
appo = Replace(appo, vbCr, "")
'sostituisco i LF con #END# per conoscere la fine dalla riga
appo = Replace(appo, vbLf, "#END#")
'In linee avro' il file linea per linea
Linee() = Split(appo, "#END#")
Lung = UBound(Linee)

conta = Lung
'Qui conto gli a capo alla fine del file per farli ignorare al programma le linee vuote alla fine
Do While conta > 0
If Linee(conta) = "" Then

Lung = Lung - 1
End If
conta = conta - 1
Loop
grazie
ciao
__________________
-Mac Book intel core duo 1,83GHz, 1,25 Gb RAM
-Amd athlon 64 dual core 4400+, 2 GB RAM, Asus a8n-sli Deluxe, totale 500 GB di HARD DISK(4 hdd)
frizzo28 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
Framework e la crisi delle memorie: terz...
Doom è ovunque: perché il ...
NVIDIA aggiorna G-Sync Pulsar: migliorat...
Portatile gaming con RTX 5060 a 1.099€: ...
6G for dummies: al MWC 2026 il CEO di Qu...
Le RAM tornano a salire di prezzo: quest...
5 robot aspirapolvere bestseller al mini...
A 59 anni il mio primo hackathon: dieci ...
Come sfruttare le Offerte di Primavera p...
NVIDIA promette un salto enorme: path tr...
Il meglio di Amazon in 23 articoli: supe...
Questo portatile MSI da 16" OLED 38...
DirectX, prove tecniche di futuro: machi...
Le analisi di ALMA sulla cometa interste...
La missione cinese Tianwen-3 per portare...
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: 13:36.


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