Перенос значений столбца xlsx файла в строку программы через код C#

Рейтинг: -1Ответов: 1Опубликовано: 07.08.2023

Есть два xlsx файла и программа, отправляющая результаты (в данном случае это значения столбца). Моя задача: взять значения из столбца (то есть, ctrl c, ctrl v) и поместить их в строчку, которая находится в программе. Перед запуском самой программы, данной строчки нету, тк находимся на главном экране. Нужно сначала нажать на кнопку "Отчет" и нас перенесет на страницу, где есть строка, куда нужно поместить данные из таблицы. Если разбить это все на задачи, будет выглядеть так:

  1. Открыть xlsx файл
  2. Скопировать значения столбца
  3. Открыть программу
  4. Перейти на вкладку "Отчет"
  5. Поместить значения в строчку
  6. Нажать на кнопку "Отправить"

Из всего этого есть только метод открытия программы:


static void OpenProgramm() { Process.Start("D:\Podacha\Temp.exe"); }


Ответы

▲ 1

Вам предстоит знакомство с WinApi. Доку ищите на сайте Microsoft и на pinvoke.net.

Алгоритм будет такой:

  1. Найдём окно по имени.
  2. Найдём в этом окне нужную кнопку
  3. Кликнем на неё.
  4. Ищем вкладку, кликаем на неё
  5. Ищем строку, вставляем в неё данные
  6. Ищем кнопку "Отправить" и кликаем на неё.

Идентификаторы объектов ищем через инструмент Spy++ из состава Visual Studio.

Пример того, как найти приложение и кликнуть на кнопку: https://www.c-sharpcorner.com/UploadFile/SamTomato/clicking-a-button-in-another-application/

Для вставки текста потребуется метод SendDlgItemMessage.