Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Formato data errore #ND

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

Formato data errore #ND

Postdi apocrimata75 » 05/11/11 11:41

Spero qualcuno mi possa aiutare:
da un foglio xx copio delle celle (tutte nella stessa colonna) contenenti date.
Incollo (con incolla valori), sul foglio yy, i dati di cui sopra a partire dalla cella F4 a scendere.

Legata alla cella F4, nella cella AB4, vi è la seguente formula : =SE(F4<>"";CERCA.VERT(F4;$AA$1:$AC$2;3);""). Per chiarire le celle da aa1 a ac2 contengono delle date, per cui se il valore in f4 è all'interno di tale range si avrà in AB4 il valore C o il valore A.

Il problema consiste nel fatto che: se scrivo (digito) la data (esempio 01/01/2008) nella cella F4 del foglio yy, il risultato sarà "C" (giusto), ma se copio la stessa data dal foglio xx e la incollo (incolla valori, ma le ho provate tutte) il risultato in AB4 sarà: #ND.

Ho notato però che se entro nella cella F4 (dopo le operazioni di copiatura) con F2 e premo "Invio" la cella AB4 non restituisce più l'errore ma dà il risultato esatto.

Potrei ovviare con una macro che "entri" in tutte le celle della colonna F dalla nr 4 alla nr. 5.000, e dia l'invio ma non la so scrivere, potreste aiutarmi?
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Sponsor
 

Re: Formato data errore #ND. Ripetizione macro

Postdi apocrimata75 » 05/11/11 13:48

qualcuno può aiutarmi?
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

F2 Invio

Postdi apocrimata75 » 05/11/11 16:21

qualcuno potrebbe aiutarmi per inserire una macro che permetta di premere f2 e poi invio dalla cella f1 alla cella f1000.

Ho provato questa macro

Sub Macro1()
RigaI = 4
RigaF = 10
ColonnaI = 6
ColonnaF = 6
For TR = RigaI To RigaF
For TC = ColonnaI To ColonnaF
Cells(TR, TC).Value = Val(Cells(TR, TC))
Next TC
Next TR
End Sub


ma le celle contengono date e la macro di cui sopra le trasforma in 01/01/1900.

Come posso fare?
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Flash30005 » 05/11/11 21:19

potresti allegare il file?
(togli dati sensibili ma lascia i campi "incriminati")

ciao

N.B. Non è corretto aprire più topic per lo stesso motivo, se non ricevi risposta un motivo c'è sicuramente, non credi?
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato data errore #ND

Postdi apocrimata75 » 08/11/11 19:11

Ho risolto selezionando l'intera colonna, "dati in colonna" poi "fine". Non so perchè ma funziona. Ti ho mandato un mp
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi apocrimata75 » 11/11/11 14:51

Purtroppo "testo in colonne" non funziona sempre, qualcuno, in particolar modo flash3005, potrebbe spiegarmi come creare una macro che svolga la funzione di F"+invio dalla cella F2 alla cella F5000?.
Allego 2 files: il primo si chiama "dati" dal quale vanno copiate le date della colonna B, che poi vanno incollati nella colonna F del secondo file.

Questo è il link

http://www.filedropper.com/test_40

Per favore qualcuno mi può aiutare?
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Anthony47 » 11/11/11 15:09

E' evidente che quei dati che copi non sono date ma sono stringhe.
Probabilmente puoi recuperare tutto con questa procedura:
-copi una cella vuote
-selezioni la colonna che contiene le finte date
-menu /incolla speciale /Valori; spunti Operazione "Addiziona"
-Ok

Eventualmente puoi registrare una macro, se devi ripetere spesso.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Formato data errore #ND

Postdi apocrimata75 » 11/11/11 16:13

ho fatto una prova e sembra funzionare. Ma per la macro che chiedevo sapresti darmi una mano? :idea:
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Flash30005 » 11/11/11 17:05

Puoi registrare il procedimento consigliato da Anthony e avrai realizzato la tua macro.

altrimenti puoi usare questa
Codice: Seleziona tutto
Sub Normalizza()
Application.Calculation = xlManual
UR = Range("F" & Rows.Count).End(xlUp).Row
For RR = 4 To 5000
If Range("F" & RR).Value = "" Then GoTo Esci
Range("F" & RR).Value = DateSerial(Mid(Range("F" & RR).Value, 7, 4), Mid(Range("F" & RR).Value, 4, 2), Mid(Range("F" & RR).Value, 1, 2))
Next RR
Esci:
Application.Calculation = xlCalculationAutomatic
End Sub


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato data errore #ND

Postdi apocrimata75 » 11/11/11 17:55

La macro faceva diventare le date in migliaia di euro. Ho notato che entrando nel formato celle, ed impostando data a 8 cifre gg/mm/aa non dava più errore, così la macro è diventata:


Application.Calculation = xlManual
UR = Range("F" & Rows.Count).End(xlUp).Row
For RR = 4 To 5000
If Range("F" & RR).Value = "" Then GoTo Esci
Range("F" & RR).Value = DateSerial(Mid(Range("F" & RR).Value, 7, 4), Mid(Range("F" & RR).Value, 4, 2), Mid(Range("F" & RR).Value, 1, 2))
Next RR
Esci:
Application.Calculation = xlCalculationAutomatic
Range("F4:F5000").Select
Selection.NumberFormat = "dd/mm/yy;@"
With Selection.Font
.Name = "Arial"
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With Selection.Font
.Name = "Arial"
.Size = 12
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
Range("F4").Select
End Sub
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Flash30005 » 11/11/11 23:54

:eeh: :eeh: :eeh:
Fermati dove indicato
Codice: Seleziona tutto
Application.Calculation = xlManual
UR = Range("F" & Rows.Count).End(xlUp).Row
For RR = 4 To 5000
If Range("F" & RR).Value = "" Then GoTo Esci
Range("F" & RR).Value = DateSerial(Mid(Range("F" & RR).Value, 7, 4), Mid(Range("F" & RR).Value, 4, 2), Mid(Range("F" & RR).Value, 1, 2))
Next RR
Esci:
Application.Calculation = xlCalculationAutomatic
Range("F4:F5000").Select
    Selection.NumberFormat = "dd/mm/yy;@"
'<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< togli tutto ciò che viene dopo
    With Selection.Font
        .Name = "Arial"
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    With Selection.Font
        .Name = "Arial"
        .Size = 12
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
'<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Fino qui
    Range("F4").Select
End Sub



Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato data errore #ND

Postdi apocrimata75 » 13/11/11 09:54

Ok, grazie, provo e poi ti faccio sapere.
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi apocrimata75 » 14/11/11 11:33

Ho provato, restituisce un errore di runtime, la seguente stringa evidenziata in giallo
Selection.NumberFormat = "dd/mm/yy;@"

le celle sono state corrette nel giusto formato.
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Flash30005 » 14/11/11 12:08

Se ti dà errore ora significa che avevi anche prima l'errore mentre dici che la macro funzionante era quella da te postata.

Non ho fatto altro che togliere la formattazione font e bordi e ciò non va ad inficiare il codice che formattava la data
purché prima di quella riga sia rimasta la selezione del range
Codice: Seleziona tutto
...
Range("F4:F5000").Select
    Selection.NumberFormat = "dd/mm/yy;@"


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato data errore #ND

Postdi apocrimata75 » 14/11/11 15:26

la macro postata confermo funzionava. con le modifiche il risultato è perfetto solo che si ferma (dopo aver svolto il suo dovere) e premendo debug compare quella striscia di prima evidenziata in giallo. grazie per l'aiuto, non avrei potuto terminare il mio lavoro senza..
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22

Re: Formato data errore #ND

Postdi Flash30005 » 14/11/11 17:46

E allora togli anche queste ultime due righe
Codice: Seleziona tutto
Range("F4:F5000").Select
Selection.NumberFormat = "dd/mm/yy;@"


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato data errore #ND

Postdi Anthony47 » 14/11/11 22:17

Vi ho perduto
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Formato data errore #ND

Postdi apocrimata75 » 15/11/11 21:35

Ok, flash3005, con l'ultima correzione sembra funzionare, ho eliminato le ultime 2 righe.
Windows 7 - Office 2010
apocrimata75
Utente Senior
 
Post: 181
Iscritto il: 28/05/11 13:22


Torna a Applicazioni Office Windows


Topic correlati a "Formato data errore #ND":


Chi c’è in linea

Visitano il forum: Maury170419 e 15 ospiti