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

[RISOLTO] Carrica da file csv a file Excel sbaglia formato date

Ultimo Aggiornamento: 08/06/2022 19:00
Post: 4
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 15:04

Devo caricare, tramite una Macro, un file csv in un foglio di un file excel, nel file sono presenti 2 date per record

Nel file csv le date hanno formato GGMMAAAA.

Alcuni records vengono caricati correttamene altri, senza una regole apparente, vengono caricati MMGGAAAA.

Nel file Excel allegato le date NON corrette sono evidenziate in giallo

Ho provato diverse strade ma senza risultato, confido nella Vs perizia.
Allego il file csv e il file Excel. ( Macro Carica = Crtl+C)
Ho Excel 2019

Cordiali saluti e un ringraziamento in anticipo.
Maurizio Marucchi
[Modificato da by sal 08/06/2022 17:16]
Post: 278
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 15:23

manca il file con macro

LEO
https://t.me/LordBrum
Post: 4
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 15:38

L'ho allegato ma non è stato caricato.

Ho riprovato, lo seleziono ma quando premo il pulsante Upload, non lo carica nonostante l'abbia zippato.

Post: 279
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 15:42

quanto è grande di suo ? e zippato ?
se piu di 3 mega puoi usare https://wetransfer.com
[Modificato da L2018 08/06/2022 15:46]

LEO
https://t.me/LordBrum
Post: 5
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 15:43

Macro
Sub Carica()
'
' Carica Macro
'
' Scelta rapida da tastiera: CTRL+c
'

'   Azzera foglio Movimanti
    Worksheets("Movimenti").Select
    Selection.ClearContents

'
    Call SelezionaFile(NomeFile, FlagErrore)
    If FlagErrore = True Then
        MsgBox " Non è stato scelto il file, ripetere"
        GoTo Fine
    End If
   
    Worksheets("Movimenti").Select
    Open NomeFile For Input As #1
    
    Riga = 1
    
    Do Until EOF(1)
        Line Input #1, Linea
        Matrice = Split(Linea, ";")
        Col = UBound(Matrice) - LBound(Matrice) + 1
        For I = 1 To Col
            Cells(Riga, I) = Matrice(I - 1)
        Next I
        Riga = Riga + 1
    Loop
    
    Close #1
    
Fine:
End Sub

Sub SelezionaFile(NomeFile, FlagErrore)
    
    FlagErrore = False
    
    With Application.FileDialog(msoFileDialogOpen)
        .AllowMultiSelect = False
        .Filters.Clear
        .InitialView = msoFileDialogViewList
        .Title = "Scelta File"
        .ButtonName = "OK Vai!"
        .Show
        
        NomeFile = .SelectedItems(1)
        
        If .SelectedItems.Count = 0 Then FlagErrore = True
        
    End With
   
End Sub
Post: 6
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 15:47

file excel
Dim Originale 60 Kb, zippato 58 Kb
Post: 280
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 15:48

non so aiutarti nel merito, cercavo solo di far risparmiare tempo a te e a chi ti aiuterà
il file completo è meglio sia pure senza dati sensibili

LEO
https://t.me/LordBrum
Post: 281
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 15:49

Re: file excel
maurizio.ma, 08/06/2022 15:47:

Dim Originale 60 Kb, zippato 58 Kb



è piccolo, e allora devi fare piu attenzione nel caricarlo
carica senza zipparlo ma con piu calma e attenzione
[Modificato da L2018 08/06/2022 15:51]

LEO
https://t.me/LordBrum
Post: 7
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 15:56

Più che selezionarlo e cliccare sul pulsante Upload non faccio.
Post: 282
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 16:08

ho caricato io a mano il csv nel file, dove però c'è anche la macro
se ti serve altro devi aspettare chi sa manomettere la macro
ma io non vedo errori di date, a occhio mi sembrano tutte GG MM AAAA
forse nel file che ti ho dato devi reinserire la TUA macro perchè io ho cambiato inutilmente il il nome da Movimenti a Foglio1
sì, adesso sono riuscito a farla funzionare ed in effetti ho visto l'errore che dichiari, dobbiamo aspettare l'esperto


LEO
[Modificato da L2018 08/06/2022 16:19]

LEO
https://t.me/LordBrum
Post: 8
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 16:28

File caricato!!
Per poterlo caricare ho rinominato il file Prova.ZIP in Prova.xls

Sappiate cha si tratta di un .ZIP rinominato
Scusate ma era l'unico modo per farlo digerire al programma
Post: 9
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 16:31

Re:
L2018, 08/06/2022 16:08:

ho caricato io a mano il csv nel file, dove però c'è anche la macro
se ti serve altro devi aspettare chi sa manomettere la macro
ma io non vedo errori di date, a occhio mi sembrano tutte GG MM AAAA
forse nel file che ti ho dato devi reinserire la TUA macro perchè io ho cambiato inutilmente il il nome da Movimenti a Foglio1
sì, adesso sono riuscito a farla funzionare ed in effetti ho visto l'errore che dichiari, dobbiamo aspettare l'esperto


LEO




Grazie comunque Leo
Post: 283
Registrato il: 02/04/2018
Città: PESCARA
Età: 75
Utente Junior
EXCEL 2016 - SPREAD32
OFFLINE
08/06/2022 17:09

intanto forse si farebbe prima a correggere le date sbagliate nel CSV, altrimenti poi si crea la necessità di interpretarle e riformattarle
esempio da 23/8/2021 a 23/08/2021

ma ho notato ANCHE che se da EXCEL io faccio il prelievo di un generico CSV senza usare macro, il tuo CSV viene caricato correggendo automaticamente gli errori di data.

Quindi la domanda:

La macro serve SOLO per caricare il CSV ?

Leo
[Modificato da L2018 08/06/2022 17:17]

LEO
https://t.me/LordBrum
Post: 6.832
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
08/06/2022 17:12

Ciao, Maurizio, sto dando un occhiata al file, perche usi una macro per caricare il file CSV.

non puoi fare importa csv nel menu dati, io l'ho fatto e le date sono giuste, ecco un immagine



elimino anche il tuo file csv perche credo che ci siano dati sensibili, ATTENZIONE!!!! ed inserire file

ora do uno sguardo alla macro

Ciao By Sal (8-D

se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 10
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 17:16

In effetti si tratta del prezzo dei caricamento di un foglio excel molto più complesso.

Ho riportato solo la macro di caricamento perché sbaglia.

Quanto ai dati sono solo nomi e cognomi nulla di sensibile, comunque grazie
Post: 6.833
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
08/06/2022 17:26

Ciao Maurizio io invece ho visto coordinate bancarie, fose sbaglio

anche se il file è più complesso puoi farlo con Power query, puoi importare e modificare quello che vuoi, ho visto che hai Excel2019 e puoi farlo tranquillamente.

anche il'importo sembra corretto, non l'ho modificato per mettere i decimali ma sembrano giusti



cosa è che non ti trovi?

adesso importo il file con la macro e vedo la differenza

Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 11
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 17:51

Si tratta di un file da dare ai cassieri di un Gas ( gruppo di acquisto Solidale ), che non hanno excel recenti, per gestire la contabilità in modo più agevole e "automatizzato".

PS Quello che può sembrare una coordinata bancaria in effetti si tratta del numero di versamento.

Grazie
Post: 6.834
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
08/06/2022 17:57

Ciao ti sto modificando la macro, in quanto alcune date le inserisce come testo ed altre come date, ed anche L'importo è la stessa cosa.

quando si carica un file CSV di norma tutti i dati all'interno vengono considerati testo, dipende anche dal gestionale che crea il file CSV, e quindi quanto si caricano i dati i dati non sono formattati nel modo giusto ed Excel non li riconosce o meglio li considera testo, e quindi se si devono fare calcoli o ricerche non funzionano.

Ciao a breve ti inserisco la macro giusta per fare le prove. By Sal (8-D


se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 6.835
Registrato il: 14/11/2004
Utente Master
Office 2019
ONLINE
08/06/2022 18:18

Ciao Maurizio ecco la macro modificata, dovresti dichiarare le variabili, io ne ho aggiunta 1 per la conversione, più facile da usare al posto dell'indice matrice.

eccola

Sub Carica()
'
' Carica Macro
'
' Scelta rapida da tastiera: CTRL+c
'

'   Azzera foglio Movimanti
    Worksheets("Movimenti").Select
    Cells.ClearContents

'
    Call SelezionaFile(NomeFile, FlagErrore)
    If FlagErrore = True Then
        MsgBox " Non è stato scelto il file, ripetere"
        GoTo Fine
    End If
   
    Worksheets("Movimenti").Select
    Open NomeFile For Input As #1
    
    Riga = 1
    
    Do Until EOF(1)
        Line Input #1, Linea
        Matrice = Split(Linea, ";")
        Col = UBound(Matrice) - LBound(Matrice) + 1
        For I = 1 To Col
          d = Matrice(I - 1)
          If I = 1 Or I = 2 Then
            If IsDate(d) Then Cells(Riga, I) = CDate(d) Else Cells(Riga, I) = d
          ElseIf I = 5 And IsNumeric(d) Then
            Cells(Riga, I) = CDbl(d)
          Else
            Cells(Riga, I) = Matrice(I - 1)
          End If
        Next I
        Riga = Riga + 1
    Loop
    
    Close #1
    
Fine:
End Sub


in effetti prende il valore della matrice corrispondente alla data oppure all'importo e li converte in data o numero

Fai sapere, Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 12
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 18:56

RISOLTO !
Sal, la soluzione che mai hai propostoo FUNZIONA alla grande!!!

Un grande ringraziamento.
Maurizio
Post: 13
Registrato il: 18/12/2019
Età: 72
Utente Junior
Excel 2019
OFFLINE
08/06/2022 19:00

Come faccio a mettere il tag RISOLTO nel titolo?
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 07:42. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com