Excel поиск в другом файле

Я играю с xlrd, и у меня возникли некоторые трудности. Основная идея того, что я пытаюсь сделать, — это открыть файл Excel, прочитать содержимое первого столбца в массив и использовать этот массив для поиска в другом файле Excel. Когда значение найдено, оно должно вернуть содержимое трех ячеек из второго файла Excel. мой код:

В настоящее время это не работает. Если я заменю if cell_col1 == finding: в if cell_col1 == "ABC": тогда условие работает, но оно выдает ячейки 5 раз, что является количеством результатов в моем массиве.

Я знаю, что у меня есть проблемы в моем коде, но я не программист, и я немного застрял.

Я не могу запустить ваш код и переписать его в более питоническом стиле:

Ошибка была в if cell_col1 == finding: Вы сравниваете str и list of cell .

11 просмотра

1 ответ

1 Репутация автора

Я пытаюсь найти ячейку, содержащую определенное значение, в другом закрытом файле, откуда я запускаю свой код. Как только я нахожу это, я хочу получить номер строки указанной ячейки. Как-то мой код не будет работать. Это смесь вещей, которые я нашел на этом сайте, и то, что я сам закодировал. Любая помощь будет замечательной! Благодарю.

Ответы (1)

плюса

2038 Репутация автора

Добро пожаловать в Stack Overflow, я вижу, что вы новичок, поэтому я решил показать другой способ решения этого вопроса. Вам нужно изучить типы данных и какие функции вернуться, поэтому я думаю, вместо использования вложенных функций и т. Д. Лучше начать с более простого кода, а затем вы можете сделать его более сложным, запустив его быстрее и т. Д. Кажется, в столбце A, поэтому вместо того, чтобы использовать FIND только цикл и сравнить его с вашим lookup_value . Убедитесь, что вы даете lookup_value реальную ценность внутри процедуры:

Читайте также:  Медиаплеер классик не воспроизводит видео

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Связывание с другими книгами — это очень распространенная задача в Excel, но иногда вы можете столкнуться с книгой, в которой есть ссылки, даже если Excel сообщает, что они существуют. Найти все внешние ссылки, которые используются в книге, не существует. Однако вы можете воспользоваться несколькими ручными методами. Необходимо искать формулы, определенные имена, объекты (такие как текстовые поля или фигуры), названия диаграмм и ряды данных диаграммы.

В любой книге Excel, на которую вы ссылались, есть имя файла этой книги в ссылке с расширением (например, XLS, XLSX, xlsm), поэтому рекомендуемый способ — найти все ссылки на разделяемое расширение файла . XL . Если вы собираетесь создать связь с другим источником, вам нужно будет определить наиболее подходящее условие поиска.

Поиск ссылок, используемых в формулах

Нажмите клавиши CTRL + F , чтобы открыть диалоговое окно Поиск и замена .

Выберите пункт Параметры.

В поле найти введите . XL.

В поле в выберите пункт Книга.

В поле Искать в выберите пункт формулы.

Нажмите кнопку найти все.

В появившемся списке просмотрите формулы с формулами, которые содержат . XL. В этом случае приложение Excel обнаружило несколько экземпляров шаблона бюджета Master. xlsx.

Чтобы выделить ячейку с внешней ссылкой, щелкните ссылку адрес ячейки для этой строки в поле со списком.

Читайте также:  Как прикрепить полочку к стене

Совет: Щелкните любой заголовок столбца, чтобы отсортировать столбец, а затем сгруппируйте все внешние ссылки.

На вкладке Формулы в группе Определенные имена выберите пункт Диспетчер имен.

Установите флажки для всех элементов в списке и просмотрите их в столбце " ссылки " для внешних ссылок. Внешние ссылки содержат ссылку на другую книгу, например [Budget. xlsx].

Щелкните любой заголовок столбца, чтобы отсортировать столбец, а затем сгруппируйте все внешние ссылки.

Вы можете сгруппировать несколько элементов с помощью клавиш SHIFT или CTRL , щелкнув левой кнопкой мыши, если вы хотите удалить несколько элементов одновременно.

Нажмите клавиши CTRL + G, сочетание клавиш для диалогового окна Переход и выберите Специальные объекты _гт_ _гт_ ОК. Будут выбраны все объекты на активном листе.

Нажимайте клавишу Tab для перемещения между каждым из выбранных объектов, а затем просмотрите строка формул для ссылки на другую книгу, например [Budget. xlsx].

Щелкните название диаграммы на диаграмме, которую нужно проверить.

В строка формул найдите ссылку на другую книгу, например [Budget. xls].

Выберите диаграмму, которую вы хотите проверить.

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

В строка формул найдите ссылку на другую книгу, например [Budget. xls] в функции ряд.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.