3

У меня есть лист Excel, используемый для переформатирования данных, поступающих из БД Access, которые затем возвращаются в ArcMap ESRI. Все работает нормально, за исключением того, что на листе необходимо загружать данные из разных БД Access в разное время (не одновременно), а иногда в БД Access есть разные # записей, которые неправильно выравнивают лист переформатирования.

Например, DB1 имеет 4 записи; DataValueA, DatavalueB, DatavalueC, DataValueD. DB2 имеет только 3 записи; DatavalueA, DatavalueC, DatavalueD (отсутствует DatavalueB, потому что он не применяется для этой БД).

Когда я настроил свою вкладку переформатирования листа, чтобы увидеть DB1, я размечал свои столбцы, чтобы показать DataValueA для DataValueD, связывая его с вкладкой рабочего листа источника данных, показывая содержимое файла Access в виде 4 строк значений данных. НО тогда я загружаюсь в DB2, которая имеет только 3 строки на вкладке Источник доступа, что означает, что ячейка вкладки переформатирования, которая ссылается на ячейку A4 на вкладке источника DB1, теперь должна будет ссылаться на ячейку A3 на вкладке источника DB2.

Чтобы обойти это, мне интересно, есть ли способ связать имя или критерии с ячейками таблицы исходных данных, чтобы переформатированная таблица могла ссылаться на них вместо адресов ячеек? то есть. «переформатирование ячейки = DataSourcePolygonArea IF ((CruiseType = 'Type1') & (Method = 'ground'))" - означает, что ячейка переформатирования будет искать исходные данные и находить строку, в которой CruiseType и Method были действительными, а затем использовать DataSourcePolygonArea из этого ряда.

Я знаю, запутанное объяснение, но на самом деле я просто пытаюсь выяснить, как найти определенную информацию в рабочей таблице, когда она не находится в стабильной ссылке на ячейку. В конечном счете мне придется проверить, что значения в двух столбцах верны, чтобы вернуть значение в третьем столбце, но стараюсь упростить это, чтобы понять основы (т. Е. Если A1 = "value 1" И B1 = "value 2" дай мне значение для С1)

Вот изображение некоторых примеров данных для дальнейшего объяснения, а также ссылка на электронную таблицу с примером: пример данных

2 ответа2

2

Как уже упоминалось, Андре использовал именованные ячейки (или диапазон) вместо индексов.

  1. В ячейке щелкните правой кнопкой мыши и назовите -> DATA1
  2. Во второй ячейке щелкните правой кнопкой мыши и назовите -> DATA2
  3. В ячейке, которая ссылается на данные, скажем =SUM(DATA1, DATA2)

Теперь, когда вы переместите конкретный элемент данных в другую ячейку, вы обнаружите, что ячейка SUM по-прежнему имеет правильное количество.

0

Сделать ссылку именованным диапазоном

Установите для именованного диапазона комбинацию INDEX MATCH которая возвращает вам правильный DataSourcePolygonArea .

Если вы предоставите нам пример данных, я могу привести конкретный пример.

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