PDA

Показать полную графическую версию : Макрос Excel для преобразования колонки текста в число в dbf файлах


aRHangel2013
09-01-2013, 14:19
Доброе время суток. Помогите написать макрос для Excel 2003, который бы в dbf файлах определенной структуры преобразовывал информацию в ячейках в число, и устанавливал в тех числах 2 знака после запятой. Ну и желательно после всего сохранить файл, закрыть и перейти на новый.
Диапазон с данными: от B2 и до ~ (но как правило больше 20-30 не бывает, и число строк разно в разных файлах)
При сохранении dbf файла всегда выскакивают подтверждения
Все файлы лежат в одной папке
И если можно, то автоматизировать весь процесс.
http://hostingkartinok.com/show-image.php?id=e2336e212610e45d1b3dd50afc920209

Iska
09-01-2013, 14:27
aRHangel2013, Вы лучше выложите образец файла *.dbf. Хотя бы с одной записью в качестве примера.

Iska
10-01-2013, 08:28
aRHangel2013, теперь рассказывайте в нормальных терминах БД: Вам нужно преобразовать текстовое поле «SBK_SUM» в вещественное с двузначной точностью после запятой, так? Поясните также цель и смысл данных действий.

aRHangel2013
10-01-2013, 15:58
В общем весь процесс: Приходят некие файлы, их я конвертирую в *.dbf, т.к. конечная программа принимает только этот тип файла. но при конвертации колонка «SBK_SUM» появляется с текстовым форматом, соот-но конечная прога не принимает значения. Поэтому я захожу в каждый файл, выделяю значения колонки «SBK_SUM» , преобразовую в числовой формат и увеличиваю разрядность до 2х знаков. Вот хотелось бы, собственно, автоматизировать процесс, то ли в одном файле, то ли сразу во всех выбранных.
Вот собственно и все.

Iska
10-01-2013, 16:12
aRHangel2013, спасибо, ясно.

1. Как и чем преобразуете файлы в *.dbf?
2. Можете выслать в личку упакованный образец такого файла?

aRHangel2013
10-01-2013, 19:54
К сожалению, я не могу рассказать больше про все систему. Я просто хочу небольшой скриптик, который бы выполнял преобразование форматов и устанавливал 2 разряда после запятой.

Iska
11-01-2013, 09:03
Вы что — соглашение подписывали? Рассказать как и откуда — Вы вполне можете. Поправить создание или выгрузку гораздо проще нежели извращаться с тем, что драйвер не поддерживает в принципе.

aRHangel2013
11-01-2013, 16:20
Да, подписывал. я не совсем пойму вопросы 1. и 2. Вам выслать прогу и начальный файл из которого получается *.dbf?

Iska
11-01-2013, 17:07
я не совсем пойму вопросы 1. и 2. Вам выслать прогу и начальный файл из которого получается *.dbf? »
Нет, только образец исходного файла и желаемый результат в виде dbf, полученный из данного образца. Тогда я смогу посмотреть, возможно ли сделать это сразу, не за два преобразования — файл -> dbf с текстовым полем -> dbf с numeric полем, а за один проход.

Исходный файл к Вам в каком виде поступает — простой текст, csv, может xml?




© OSzone.net 2001-2012