Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Office (Word, Excel, Outlook и т.д.) (http://forum.oszone.net/forumdisplay.php?f=115)
-   -   [решено] замещение значений в ячейках (http://forum.oszone.net/showthread.php?t=314594)

kontox 05-05-2016 16:09 2632172

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

Iska 05-05-2016 16:34 2632187

Цитата:

Цитата kontox
В ней куча .csv файлов. »

В качестве образца упакуйте пару-тройку Ваших .csv файлов в архив и приложите к сообщению.

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

kontox 05-05-2016 17:15 2632197

Вложений: 1
Iska, упаковал.
В мс офис как-то привычно:)

kontox 06-05-2016 12:32 2632415

Прошу извинить за назойливость, получилось что-то сделать?))

NickM 06-05-2016 13:52 2632448

kontox, вот здесь можно подсмотреть и под себя переделать.

kontox 06-05-2016 14:40 2632466

NickM, я так понял, это через cmd делается, но не знаю как под себя переделать. Покажите?

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

NickM 07-05-2016 07:14 2632638

Цитата:

Цитата kontox
Покажите? »

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

Код:

@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 2632655

NickM, а разве не будут ли в этом коде удалены «-1» из, например, «-1234»?

NickM 07-05-2016 10:53 2632677

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

kontox 07-05-2016 15:33 2632750

NickM, отрицательных значений в данных нет. Но я не вижу пути к файлам? или просто батник запускать уже самой директории с файлами?

NickM 07-05-2016 16:48 2632765

Цитата:

Цитата kontox
не вижу пути к файлам? или просто батник запускать уже самой директории с файлами? »

угу.
Цитата:

Цитата NickM
rem созадим временный файл содержащий Наши *.csv
DIR /B *.csv /A-D > temp.tmp »


Iska 07-05-2016 17:29 2632783

Цитата:

Цитата NickM
Полагаю, что и приведенный Вами пример обыграть можно, например заменять целиком значение "-1;" »

Не обыграете — тогда под замену не попадут концевые (в последнем столбце) «-1».

NickM 07-05-2016 18:13 2632790

Iska, да, здесь Ваша правда.
но учитывая,
Цитата:

Цитата kontox
отрицательных значений в данных нет »

не актуально

Iska 07-05-2016 18:37 2632797

Цитата:

Цитата NickM
но учитывая … не актуально »

Дык, не спорю ;).


Время: 13:18.

Время: 13:18.
© OSzone.net 2001-