Errore formattazione date
Hai un problema con Excel? 
Errore formattazione date
di fantedicoppe data: 16/10/2016 19:27:40
Salve a tutti
ho 2 fogli di 2 file differenti, il primo ha una colonna con gli importi ed una colonna con le date della transazione. il secondo file ha solo degli importi.
devo controllare che i valori del secondo foglio siano presenti nel primo e devo scrivere a fianco la data corrispondente.
Il mio problema e' che a volte giorno e mese sono invertiti, ma solo in alcune celle... provo a mostrarvi un esempio
se ho questi dati:
1035.19 12-09-2016
9079.24 12-09-2016
2495.2 12-09-2016
82.09 12-09-2016
909.99 13-09-2016
9292.46 13-09-2016
2737.02 13-09-2016
lo script mi calcola le seguenti date:
1117.28 09/12/2016
12029.48 13/09/2016
909.99 13/09/2016
1117.28 sarebbe 1035.19 + 82.09, le date sono uguali ma poi il dato riportato ha giorni e mesi invertiti, ma solo in poche celle, non in tutte
qualcuno ha idea di dove ho sbagliato?
invece di usare le stringhe ho provato ad usare le variabili date, ad usare format("dd-mm-yy"), a copiare il valore delle celle ma niente da fare
il codice non e' dei migliori,ho provato a riscriverlo spero senza errori visto che nel file originale e' un po piu' incasinato, cmq la struttura usata e' questa
Dim i, j As Integer
Dim ToCheck As Double
Dim Data As String
Dim cl As Range
For Each cl In Range("A2:A50")
Data = ""
If cl.Value <> "" Then
ToCheck = cl.Value
Sheets("foglio2").Activate
For i = 1 To 500
For j = 1 To 500
If i <> j And ToCheck = Cells(i, 1).Value + Cells(j, 1).Value Then
Cells(i, 1).Interior.ColorIndex = 2
Cells(j, 1).Interior.ColorIndex = 2
'se le date sono uguali ne memorizzo una, se sono diverse le metto in ordine
If Cells(i, 2).Value = Cells(j, 2).Value Then
Data = CStr(Cells(i, 2).Value)
ElseIf Cells(i, 2).Value < Cells(j, 2).Value Then
Data = CStr(Cells(i, 2).Value) & " ; " & CStr(Cells(j, 2).Value)
Else: Data = CStr(Cells(j, 2).Value) & " ; " & CStr(Cells(i, 2).Value)
Sheets("foglio1").Activate
GoTo ES1
End If
End If
Next j
Next i
End If
ES1:
Sheets("foglio1").sctivate
If Data <> "" Then
cl.ColorIndex = 2
cl.Offset(0, 1).Value = Data
End If
Next cl |
Vuoi Approfondire?