2014-10-13 3 views
0

В листе Excel со строками параметров и столбцами систем, как так:автозаполнение формула для имен ячеек в Excel

 system1 system2 
height 58  65 
width  12  17 
weight  3  5 
...  .  . 
...  .  . 

Я ищу способ, чтобы использовать эти данные с осмысленными именами, такими как «height1» , "height2". Я могу назвать ячейки «height1» «height2» (Формулы-> Определить имя) и использовать его в ячейке = height1. Однако при автозаполнении путем перетаскивания уравнения вправо имя не изменяется на height2, и я остаюсь с тем же значением 58.

В принципе, я ищу то же поведение, что и перетаскивание автозаполнения = B2 в = B3, но со значимыми именами.

спасибо.

ответ

0

Вот макрос для обозначения их всех в вашей конвенции (не пробовал, но должно работать):

Sub NameThem() 
    Dim rng As Range 
    For i = 0 To 3 
     For j = 0 To 1 
      Set rng = Range("A1").Offset(1 + i, 1 + j) 
      Call ActiveWorkbook.Names.Add(rng.End(xlToLeft).Value & j, rng) 
     Next j 
    Next i 
End Sub 
+0

Спасибо. Несмотря на то, что ваш скрипт может быть удобен, назвать ячейки проще, это будет сделано только один раз. Уравнения автозаполнения намного сложнее, так как уравнения могут быть очень длинными (до 8 параметров) и часто меняться. Каждое изменение должно применяться для всех систем. Прямо сейчас, когда все уравнения указывают на регулярное соглашение col/row, легко применить изменение уравнения ко всем 10 системам (просто автозаполнение перетащите отредактированное уравнение вправо). – Nomad27

+0

Вы имеете в виду, что на основании этого вы хотите обновить ссылки с именами? Например. скажем, B2 называется height1, тогда вы хотите обновить все ссылки на B2 с высотой1? –

+0

Позвольте мне попытаться перефразировать. У меня есть таблица входов и таблица уравнений аналогичного размера. Я хочу ввести первый столбец уравнений (для system1), а затем перетащить автозаполнение этих уравнений на столбцы system2, system3 и т. Д. Это легко сделать при использовании = b2 (например, перетаскивая уравнение = b3 * b5 вправо, будет автозаполнение до = c3 * c5), но не работает с именами (dragging = height1 * width1 autofills = height1 * width1). – Nomad27

Смежные вопросы