|
|
|
| наша контора с 2003 года вела свою базу на EXCEL и до сих пор ведет
пытаюсь хотябы загнать эту базу ACCESS 2003 но проблемы
1. даты вводились как текст
в числовых полях каша да и встречается н/д т.е нет данных есть длинные поля
тупо импортом ничего невыходит а база то должна получиться под 60000 строк
может кто знает как всетаки перегнать базу в ACCESS
сейчас база поделена на 70-80 кусков иначе она просто не ворочеется и все пухнет и пухнет
помогите плиз советом рылся насайте здесь но ничего не нашел подходящего | |
|
| |
|
|
|
| возьми копию EXEL для експриментов/
ПОСМОТРИ свойства ячеек они могут быть действительно не датой и не числом. | |
|
| |
|
|
|
| Принцип построения учета в Excel и Access разлицаются координально.
Загнать данные из файла Excel в таблицу ACCESS не проблема, но с вероятностью 80% данные с листа Excel нужно переносить не в одну таблицу Access, а в несколько
60 тыс. строк это для главной таблицы ACCESS мелочи. Как минимум в 5 раз больше обрабатываются без проблем. | |
|
| |
|
|
|
| дело в том что база копилась и копится годами
пробовал уже выделяю столбец задаю формат даты а потом вижу что где дата вводилась как текст все так и осталось записей сами понимаете таких много
может есть способ как то все это исправит средствами VBA?
следующая проблема в цифровых полях есть "нет данных (н/д)" что с этим делать
базу то хотим сделать чтобы вот этого бардака больше не было
еще вопрос где все ошибки исправлять
не тащится она в ACCESS ошибок тысячи
переносить в разные таблицы я думаю смысла нет
вот если бы база EXCEL полностью вкачивалась бы v ACCESS ну тогда еще можно былобы подумать
а
так я в самом начале мне надо сначала данные все скачать | |
|
| |
|
|
|
| как вариант.
Создаете таблицу в access c нужными полями и форматами этих полей
В Ассess прилинковываете Excel лист как таблицу
создаете запрос на добавление из этого листа в созданную таблицы, при этом access сам конвертиует данные которые сможет. Если он не справится (вот я например не понял, что значит "нет данных (н/д)" , вы должны решить как какие данные будут преобразованы), и в запросе используя iif, cdate, nz, clng и тому подобные фунцкии привести все к нужному формату.
Наприме если вы хотите добавить данне из столбца с числами в котором встречаются "нет данных (н/д)", вы должны решить что вместо "нет данных (н/д)" вставить, ну например "0" или наоборот "9999999999", в запросе для этого поля пишите:
iif([поле] = "нет данных (н/д)";0;[поле]) | |
|
| |
|
|
|
| ну я попробую такой вариант но данные мне надо ввести все из без ошибок
1 что делать с датой ну введу ее как текст воп потом ACCESS сможет правильно преобразовать в дату?
2 что с н/д можно сделать так чтобы допустим в поле стоит 999999999 а на экран выводилось н/д | |
|
| |
|
|
|
| >ну я попробую такой вариант но данные мне надо ввести все из без ошибок
рекомендуют сначала полностью подготовить данные в эксель (это может быть промежуточный файл)
и только потом гнать в Access
в экселе свободнее можно оперировать данными - таскать-перетаскивать, сплитить, анализировать, проверять-эксперементировать... в экселе можно работать с каждой ячейкой "индивидуально" в аксессе придется работать сразу со всеми значениями поля таблицы
зы
чем меньше балуешься с исходными данными тем меньше шансы наделать ошибок | |
|
| |
|
|
|
| Естественно нужны корректные данные... кому нужны неверные.
1. Если дата имеет предствление как дата но записана как текст
"20.10.97", то при добавлении в поле формата "Дата/время" Aceess постарается ее преобразовать...
2. на уровне представления данных (форма, отчет и тп) можно, но в этом случае лучще заносить как Null или 0 или "" | |
|
| |
|
|
|
| дату лучше импортировать как текст (да и вообще лучше все поля), а уже средствами Access все преобразовывать и обрабатывать ошибки. Иначе при ситуации как идут значения дат, а в одной строке значение другово типа, то такая запись импортироваться не будет, а запишется в таблицу ошибок импорта. | |
|
| |
|
|
|
| ИМХО лучше всетаки готовить ВСЕ данные в Excel - меньше, гораздо, мороки...
насчет ТЕКСТ в принципе согласен если речь о загнать и потом уже править в Аксесс, но... ИМХО хлопотно это и не так наглядно как в Эксель | |
|
| |
|
|
|
| А что Аксес не может при получении даных преобразовывать в цикле в се типы ? | |
|
| |
|
|
|
| МОжет.
Но есть вероятность что некоторые данные не смогут быть преобразованы к нужному формату. | |
|
| |
|
|
|
| Ув. evsino
Могу посоветовать сделать так:
в столбце excel с датой скопировать этот столбец в буфер. вставить в блокнот
изменить формат СТОЛБЦА на дату. выделить все в блокноте и - Копировать
выделить в excel столбец этот (если фокус снят) и- вставить.
должно вставиться теперь КАК ДАТА
Далее форматируйте данные ИМЕННО в excel. и только когда Вас будет ВСЕ АБСОЛЮТНО устраивать-
-копируете инфу в буфер
-открываете таблицу в access И ПРАВКА >> ДОБАВИТЬ ИЗ БУФЕРА
все должно встать нормально
только так.. пользуйтесь поиск-замена символов и т.д.... но вставлять в access необходимо уже конечные данные, а не править их в access. имхо. | |
|
| |