Поиск ячейки в excel - C#

Узнай цену своей работы

Формулировка задачи:

тут немного наваял пользуясь просторами интернета и совсем запутался что нужно то мне: 1) Найти ячейку 2) Получить адрес строки 3) скопировать ячейку и вставить в новом месте Данный код может содержать много ошибок
Листинг программы
  1. Excel.Range Cifra = ObjWorkExcel.get_Range("A1", "100Y");
  2. var r = Cifra.Find("123", Type.Missing,
  3. Excel.XlFindLookIn.xlValues, Excel.XlLookAt.xlPart,
  4. Excel.XlSearchOrder.xlByRows, Excel.XlSearchDirection.xlNext, false,
  5. Type.Missing, Type.Missing);
  6. int ro = r.Row;
  7. Excel.Range RngToCopy = WS.get_Range("C"+ro);
  8. Excel.Range RngToInsert = WS.get_Range("D" + ro);
  9. RngToInsert.Insert(Microsoft.Office.Interop.Excel.XlInsertShiftDirection.xlShiftDown, RngToCopy.Copy(Type.Missing));

Решение задачи: «Поиск ячейки в excel»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Excel = Microsoft.Office.Interop.Excel;
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16. namespace ConsoleApplication1
  17. {
  18.     class Program
  19.     {
  20.         static void Main(string[] args)
  21.         {
  22.            
  23.             Excel.Application ObjWorkExcel = new Excel.Application(); //сам эксель
  24.             Excel.Workbook WB; //в эту книгу будем копировать
  25.             Excel.Worksheet WS;// в этот лист
  26.             Excel.Workbook ObjWorkBooks;// из этой книги будем копировать
  27.             Excel.Worksheet ObjWorkSheets;//с этого листа
  28.             WB = ObjWorkExcel.Workbooks.Add(System.Reflection.Missing.Value);//создаем новую книгу
  29.             WS = (Excel.Worksheet)WB.Sheets[1];//выбираем 1 лист
  30.             ObjWorkBooks = ObjWorkExcel.Workbooks.Open("d:\\copy.xlsx",
  31.             Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
  32.             Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); //открываем существующую книгу
  33.             ObjWorkSheets = ObjWorkBooks.Worksheets[1];//берем 1 лист
  34.             int LastRow = ObjWorkBooks.Sheets[1].Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell).Row; // находим в ней последнюю строку, можно заменить на известный номер
  35.            
  36.             //ObjWorkSheets.get_Range(Name).Copy(); // копи
  37.                        
  38.             string FindObj = "123";
  39.             int r = 1, i=0 ;
  40.            
  41.             string[] c = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
  42.             String Obj = String.Empty;
  43.             String column = String.Empty;
  44.             Obj = "1";
  45.  
  46.  
  47.            
  48.  
  49.             while (Obj != FindObj && r<20000)
  50.             {
  51.                 while (i < c.Length && FindObj != Obj)
  52.                 {
  53.                   // r = 7;
  54.                    
  55.                     string Name = c[i] + r; //берем диапазон ячееку
  56.                     Excel.Range ObjE = ObjWorkSheets.get_Range(Name, Type.Missing); //передаем значение ячейки переменной
  57.                     Obj = Convert.ToString(ObjE.Value2); //Конвертируем в строковую
  58.                     Console.WriteLine(Obj); //выводим на экран
  59.                     column = c[i];
  60.                     i++;
  61.                    
  62.                 }
  63.                 i = 0;
  64.                 r++;
  65.             }
  66.             r--;
  67.  
  68.  
  69.             Console.WriteLine("Мы искали " + FindObj + ", нашли \" " + Obj + " \", оно было в ячейке " + column + r + ".");
  70.             Console.ReadKey();
  71.  
  72.             ObjWorkExcel.Quit();
  73.            
  74.            
  75.  
  76.         }
  77.     }
  78. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут