PDA

Показать полную графическую версию : [решено] замещение значений в ячейках


kontox
05-05-2016, 16:09
Подскажите, пожалуйста, есть папка "C:/Users/Admin/Documents/zol/. В ней куча .csv файлов. Как сразу из всех них, там где в ячейке значение "-1" удалить это значение, или сделать замещение на пустую ячейку? Просто по отдельности открывать каждый файл это жестко.

Iska
05-05-2016, 16:34
В ней куча .csv файлов. »
В качестве образца упакуйте пару-тройку Ваших .csv файлов в архив и приложите к сообщению.

Зачем этим заниматься в Office'е-то?

kontox
05-05-2016, 17:15
Iska, упаковал.
В мс офис как-то привычно:)

kontox
06-05-2016, 12:32
Прошу извинить за назойливость, получилось что-то сделать?))

NickM
06-05-2016, 13:52
kontox, вот здесь (http://www.cyberforum.ru/post4980976.html) можно подсмотреть и под себя переделать.

kontox
06-05-2016, 14:40
NickM, я так понял, это через cmd делается, но не знаю как под себя переделать. Покажите?

кстати идея с батником ещё лучше, чем через VBA

NickM
07-05-2016, 07:14
Покажите? »

Я конечно не писатель сценариев, но вот из приведенного примера + несколько строчек что-то да сваял. Обязательно проверьте на парочке файлов по достигнутому результату, прежде чем отрабатывать сценарий на реальных данных.

@echo off
setlocal enableextensions enabledelayedexpansion
rem созадим временный файл содержащий Наши *.csv
DIR /B *.csv /A-D > temp.tmp
rem в каждом файле удалим значение -1
for /f %%i in (temp.tmp) do (
set src=%%~i
for /f "delims=" %%? in ('type "!src!"^& del /F "!src!"') do (
set t=%%?
call set t=%%t:-1=%%
call echo %%t%%>>"!src!"
)
)
rem удалим временный файл
del temp.tmp

Iska
07-05-2016, 08:35
NickM, а разве не будут ли в этом коде удалены «-1» из, например, «-1234»?

NickM
07-05-2016, 10:53
Iska, будут. Но Я в примерах не увидел отрицательных величин.
Полагаю, что и приведенный Вами пример обыграть можно, например заменять целиком значение "-1;"

kontox
07-05-2016, 15:33
NickM, отрицательных значений в данных нет. Но я не вижу пути к файлам? или просто батник запускать уже самой директории с файлами?

NickM
07-05-2016, 16:48
не вижу пути к файлам? или просто батник запускать уже самой директории с файлами? »
угу.
rem созадим временный файл содержащий Наши *.csv
DIR /B *.csv /A-D > temp.tmp »

Iska
07-05-2016, 17:29
Полагаю, что и приведенный Вами пример обыграть можно, например заменять целиком значение "-1;" »
Не обыграете — тогда под замену не попадут концевые (в последнем столбце) «-1».

NickM
07-05-2016, 18:13
Iska, да, здесь Ваша правда.
но учитывая,
отрицательных значений в данных нет »
не актуально

Iska
07-05-2016, 18:37
но учитывая … не актуально »
Дык, не спорю ;).




© OSzone.net 2001-2012