Come importare le date da Excel in Access con il testo in alcune celle?


2

Sto tentando di importare una colonna di date da Excel in Access. Il problema è che nel corso degli anni gli utenti del foglio di calcolo Excel hanno inserito sporadicamente note di testo in questa colonna di date alcune migliaia di volte. Sarebbe impossibile cancellare tutto il testo manualmente. Sono stato in grado di importare questa colonna della data in Access convertendo il formato in testo al momento dell'importazione. Il problema è che ho ancora bisogno di trovare un modo per convertire il nuovo campo Testo di accesso contenente le mie date in un campo Data, in modo da poter eseguire le funzioni aritmetiche di base su di esso (aggiungendo giorni per diversi tempi di consegna del progetto proiettato). Sfortunatamente, Access non mi consente di convertire le voci con il testo in date in Date, non più di quanto mi consenta di importarle come Date.

La mia prima domanda sarebbe: c'è un modo per ignorare questo? Altrimenti, stavo pensando a una sorta di istruzione AGGIORNATA condizionale che mi avrebbe permesso di eliminare solo il testo in queste celle, lasciando intatti i valori numerici (cioè- "SE viene trovato del testo, AGGIORNA questo campo per eliminare solo il testo “). Non sono sicuro se questo sarebbe possibile però.

Se nessuno di questi è possibile, allora qualcuno ha altre idee? Grazie in anticipo!


2
Questo deve essere fatto in Access? Mi sembra che sarebbe una buona idea condizionare i dati PRIMA che vengano importati nel database. Hai provato a rimuovere il testo dalla colonna, formatta come data, quindi importa in Access?
CharlieRB,

Se le note seguono o precedono sempre la data, puoi estrarre facilmente la data in Excel con sinistra (cella; x) o destra (a, x). Dove x è il numero di caratteri che è necessario estrarre. Dopodiché devi solo usare il comando convert e correggere manualmente le poche escpetiosn rimaste. È un lavoro di venti minuti. In alternativa puoi usare ctrl + h e sopprimere tutti i caratteri che non vuoi passare uno dopo l'altro nell'alfabeto. Oppure puoi scrivere una macro su quella in una volta. In entrambi i casi dovrebbero essere necessari 30 minuti o OS. Fornisci un esempio se desideri un aiuto più preciso.
PO

Ciao Charlie Mentre non avrei alcun problema personale con la rimozione del testo, sarebbe quasi impossibile farlo manualmente. Gli utenti di questo foglio di calcolo hanno inserito note testuali in migliaia di queste celle "Data". A complicare ulteriormente la questione è il fatto che potrebbero effettivamente aver bisogno di conservare queste note, il che significa che dovrei trovare un modo per copiare tutto il testo nelle celle adiacenti di un'altra colonna vuota prima di eliminare il testo nella colonna Data.
user333102,

Crea una colonna adiacente a quella in questione e copia una formula come questa in essa: =IF(ISTEXT(A1),"",A1)(presuppone che la colonna Asia quella che desideri importare). La nuova colonna conterrà solo le date e puoi importare da lì senza paura di includere il testo o passare ore a rimuoverlo.
techturtle,

Risposte:


0

Questo è abbastanza semplice Aggiungi una colonna di date alla tabella in Access. Aprire la vista Progettazione query e scrivere una query di aggiornamento per trasferire le date valide nel nuovo campo, eliminandole dal vecchio campo.

UPDATE Table1 SET [Table1].[NewDateField] = [Table1].[OldDateField], [Table1].[OldDateField] = "" WHERE IsDate([Table1].[OldDateField])=True;

Questa query SQL funziona in Access.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.