2017-01-24 18 views
0

Я манипулирую листами Excel и мне нужно сравнить два набора данных по-разному и проверить, все ли они равны. Поэтому я ввожу в ячейку C1 "= AND (A1: A3 = B1: B3)". К сожалению, функция сравнивает только A1 с B1 и игнорирует остальные. Есть ли способ заставить Excel понять такое очевидное намерение? Спасибо за любую помощь.Как выполнить операции массива в Excel

P.S. Не предлагайте перетаскивать мышью по диапазону или удерживать Ctrl, нажимая Enter. Я создаю рабочие листы из сценария, а не вручную. Все, что я могу сделать, это положить текстовую строку в ячейку.

+0

Ctrl + Shift + Enter –

+0

Вам нужна формула массива. Поэтому вместо того, чтобы просто нажимать клавишу ввода, когда вы вводите формулу, используйте control-shift-enter. –

+0

Спасибо за ваши комментарии. Я использую xlwings для выполнения манипуляций. Я не могу инструктировать xlwings для «нажатия CSE», я могу только добавлять текстовые команды в ячейку. Другими словами, мне нужен программируемый способ для этого. – user138668

ответ

1

Чтобы написать формулы массива через xlwings, см. docs. В качестве примера:

>>> import xlwings as xw 
>>> xw.Range('A1:A3').value = 1 # some sample data 
>>> xw.Range('B1:B3').formula_array = '=A1:A3+1' 

Когда теперь нажать на ячейку B1, вы увидите знакомую {} вокруг вашей формулы массива.

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

  • Нет связанных вопросов^_^