Сохранение цифровых символов Скопируйте нечисловые символы в соседний столбец CSV с помощью PowerShell. - PullRequest
0 голосов
/ 24 января 2019

Я новичок в PowerShell, я работал над небольшими проектами, чтобы узнать, как его использовать. В настоящее время у меня есть папка с CSV-файлами, которые выглядят так:

"1","2","3","4","5","6","7","8","9","10","11"  
"Calss Section:","Section1",,,,,,,,,  
"Date","01/00/00",,,,,,,,,  
"ID Number:","1234567",,,,,,,,,  
"Name:","John D",,,,,,,,,  
"RunID","type","checktype","locname","type","instrument","limit1","limit2","read data","vIR","result"
"Values",,,,,,,,,,
"1","measurement1","PCB 1_1","A1 to B1","Res","<>","0.00","5.00m","4.25m","ohm","P"

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

Моя цель состоит в том, чтобы отделить нечисловые значения от столбца «читать данные», поэтому в моем примере это будет значение от «4,25 м» ... до «4,25 м», «м», «ом», «P». " Я действительно хочу сделать это только для этого конкретного столбца

Я думаю, что сценарии в посте PowerShell - замена символа в определенном столбце в CSV-файле была моя отправная точка

любая помощь будет принята с благодарностью

1 Ответ

0 голосов
/ 30 января 2019

ниже мой обходной путь


    $xl=New-Object -ComObject Excel.Application  
    $xl.Visible = $True  
    $wb=$xl.workbooks.open("C:\Name2.csv")  
    $ws = $wb.Worksheets(1)  
    $range = $xl.Range("I1:J1").EntireColumn  
    $range.Insert(-4161)  
    $ws.Cells(28,9) = '=IF(ISNUMBER(RIGHT(H28,1)/1),H28,LEFT(H28,LEN(H28)-1))'  
    $ws.Cells(28,10) = '=IF(ISNUMBER(FIND("m",H28)),"m",IF(ISNUMBER(FIND("M",H28)),"M",IF(ISNUMBER(FIND("k",H28)),"k",IF(ISNUMBER(FIND("n",H28)),"n",IF(ISNUMBER(FIND("u",H28)),"u","N/A")))))'  

$xl.ActiveSheet.Range("I28:I800").FillDown()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...