У меня есть утверждение ниже в каждой 23-й строке в формате CSV для листов Excel (в документе нет формул, я просто предположил, что использование Excel было бы самым простым способом изменить это!)

wp_pos=(13.0479,0.100,-165.4428) - значения всегда разные

Я хочу изменить каждый случай 2-го значения (в данном случае 0.100)

Я хочу изменить его на общее значение 'значение ячейки + 0,200 (т.е. 0,30)

Если документ помещен в Excel, то строка

Ячейка А - это wp_pos=(13.0479,0.100)

Ячейка B 0.100 <- это значение, которое я хочу изменить

Как мне сделать это для каждой 23-й строки?

2 ответа2

3

Если ячейка A содержит wp_pos=(13.0479,0.100,-165.4428) то первым шагом является разделение значений. Так что выберите столбец A и перейдите в Data/Text to Columns . Выберите запятую разделители.

Теперь у вас будет

A = wp_pos=(13.0479
B = 0.100
C = -165.4428)

В столбце D1 поставить

=if(mod(row(),23)=0,B1+.2,B1)

Это проверит, делится ли номер строки точно на 23, и если да, то D1 будет содержать B1 + .2, в противном случае он будет содержать B1

В е1 поставь

=concatenate(A1,",",D1,",",C1)

Это снова объединит все вместе. Скопируйте D1 и E1 вниз для длины ваших данных

Теперь вы можете скопировать столбец E1 и вставить специальные (значения) на новый лист, так что вы просто получаете формулы, а затем экспортируете.

0

Мое предложение ниже предполагает, что wp_pos=(13.0479,0.1,-165.4428) в столбце A будет заменено на wp_pos=(13.0479,0.3,-165.4428) в том же столбце (где бы в этом столбце не встречалось "wp_pos"), но перечитав вопрос и комментарии это не может быть требованием. В таком случае .. игнорируй меня!

У меня есть немного сложная формула - не знаю, если она представляет интерес:

=REPLACE(A4,SEARCH(",",A4,1)+1,SEARCH(",",A4,SEARCH(",",A4,1)+1)-SEARCH(",",A4,1)-1,TEXT(VALUE(MID(A4,SEARCH(",",A4,1)+1,SEARCH(",",A4,SEARCH(",",A4,1)+1)-'SEARCH(",",A4,1)-1)+0.2),"@"))

Добавлено: немного упрощенная версия:

=REPLACE(A4,SEARCH(",",A4,1)+1,SEARCH(",",A4,SEARCH(",",A4,1)+1)-SEARCH(",",A4,1)-1,MID(A4,SEARCH(",",A4,1)+1,SEARCH(",",A4,SEARCH(",",A4,1)+1)-SEARCH(",",A4,1)-1)+0.2)

Я предполагаю, что это, возможно, могло быть упрощено далее.

Я хотел бы добавить эти формулы немного по-другому, но я предполагаю, что wp_pos= - это критерий, который мы можем использовать? Скорее, чем каждый 23-й ряд. Если нет, то игнорируйте меня снова!

Во всяком случае, если это представляет интерес, но я прошу прощения, что это немного сложнее:

  • Если данные еще не имеют заголовков столбцов, создайте фиктивную строку заголовка. Просто вставьте его сверху, введите Heading1 и перетащите его вправо. Перетащите один столбец дальше, чем последний занятый столбец.
  • Используйте Автофильтр и для первого столбца выберите Custom Filter и «начинается с», введите «wp_pos».
  • Нажмите на первую ячейку данных (в первом столбце) и нажмите Ctrl-Shift-Down чтобы выделить внизу.
  • Нажмите Ctrl-Shift-Right чтобы расширить выделение до конца.
  • Shift-Right чтобы включить пустой столбец.
  • Нажмите Ctrl . (period) чтобы сделать ячейку в верхнем правом углу активной ячейкой.
  • Ctrl-Shift-Right чтобы свернуть выделение только до этого столбца. Возможно, вам придется нажать это пару раз, пока не будет выбран только этот пустой столбец.
  • Введите формулу в активную ячейку, изменив А4 на номер текущей строки.
  • Нажмите Ctrl-Enter чтобы заполнить эту формулу выделенными ячейками.

Вы не можете Copy/Paste-Special, Values с текущим выбором. Таким образом, вам нужно удалить фильтр, выбрать этот новый столбец, затем Copy/Paste-Special, Values (по тому же столбцу). Затем скопируйте тот же столбец снова, выберите первый столбец. Щелкните правой кнопкой мыши, чтобы найти Специальную вставку, и выберите опцию, чтобы пропустить пробелы. Исходные ячейки wp_pos будут заменены, но остальные останутся нетронутыми.

Как я уже сказал, разработайте! Но эта схема может содержать некоторую полезную информацию (для кого-то ..).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .