Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/25: Рейтинг темы: голосов - 25, средняя оценка - 4.64
Tim7
1

Сравнение ячеек в разных книгах Excel

11.08.2014, 14:25. Показов 4658. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Прошу помощи с программой! Пытаюсь написать приложение которое будет сравнивать ячейки в двух книгах и записывать результаты. Запнулся на массивах, не понимаю как сравнивать элементы массивов (ячейки) между собой.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
using Word = Microsoft.Office.Interop.Word;
 
 
namespace Helper
{
    public partial class Form1 : Form
    {
        private Excel.Application excelapp;
        public string baseName;
        public string fileName;
 
        public Form1()
        {
            InitializeComponent();
            openFileDialog1.Filter = "Microsoft Excel 97-2003 Worksheet (*.xls)|*.xls|Microsoft Excel Worksheet (*.xlsx)|*.xlsx";
            openFileDialog1.FileName = "";
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            textBox1.Text = openFileDialog1.FileName;
            baseName = textBox1.Text;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            textBox2.Text = openFileDialog1.FileName;
            fileName = textBox2.Text;
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
           
            excelapp = new Excel.Application();
            if (fileName == null && baseName == null)
            {
                MessageBox.Show("Не выбран файл базы данных и файл с платежами!");
            }
            else if (fileName == null)
            {
                MessageBox.Show("Не выбран файл с платежами!");
            }
            else if (baseName == null)
            {
                MessageBox.Show("Не выбран файл базы данных!");
            }
            else
            {
                Excel.Workbook MyWorkBook = excelapp.Workbooks.Open(baseName);
                Excel.Worksheet MyWorkSheet;
                MyWorkSheet = (Excel.Worksheet)MyWorkBook.Sheets[1];
                Excel.Range range = MyWorkSheet.get_Range(textBox3.Text);
            }
        }
    }
}
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.08.2014, 14:25
Ответы с готовыми решениями:

Сравнение значений ячеек на разных листах Excel и их перенос
Доброго Вам времени суток, уважаемие знатоки!!! Нужна Ваша помощь и подсказки. На листе 1 есть...

Ошибка при сравнении значений ячеек в разных книгах
Извините может кто подскажет, столкнулся с такой проблемой. У меня выгружаются в excel программно...

Сравнение двух колонок в разных книгах и вывод несовпадающих значений в отдельную книгу
Доброго времени суток! Очень нужна помощь. Есть 2 книги с данными. В одной книге AT LV колонка B...

Сравнение ячеек на разных листах
на листе "Сводка" в столбце "А" номенклатуры товара, который есть в принципе. на листе "Foto" в...

6
Заблокирован
11.08.2014, 18:00 2
не понимаю как сравнивать элементы массивов (ячейки) между собой.
Таблица Excel - это двумерный массив.
Элементы двумерных массивов сравнивают во вложенном цикле.
0
45 / 44 / 1
Регистрация: 11.07.2012
Сообщений: 1,024
22.08.2014, 14:18 3
Ferrari Вы не Феррари, вы тормоз..., покажите конкретно, как прочитать значение из конкретной ячейки листа эксель в переменную, остально будет понятно.
0
45 / 44 / 1
Регистрация: 11.07.2012
Сообщений: 1,024
24.08.2014, 16:21 4
Извините, если обидел, а мне не нравится когда вместо помощи пишут пустые отписки без всякого смысла
0
Заблокирован
24.08.2014, 21:54 5
Если хотите чтобы вам готовый код писали, идите на фриланс.
0
45 / 44 / 1
Регистрация: 11.07.2012
Сообщений: 1,024
25.08.2014, 11:25 6
Нет готовый код не нужен, нужна помощь в конкретной ошибке, которая не получается из отсутствия опыта, вместо этого в 80% ответов приходит издевка - или посылают по ссылкам черте куда или пишут пустые фразы, в этом что ли смысл форума? После таких ответов нет никакого желания не то что заплатить , а даже заходить на форум. А к фрилансерам обращаются по целой программе, а не по одному пустяковому вопросу. Уже давно на форуме было предложение открыть ответы с благодарностями в общий доступ, а то такое ощущение что модераторы больше половины слабо компетентны в закрепленных темах
1
5 / 5 / 1
Регистрация: 21.09.2013
Сообщений: 66
26.08.2014, 12:19 7
Добрый день!
Тоже присоединяюсь к теме, дабы не плодить однотипные вопросы.
Суть такая:
Пишу программу, которая выполняет отчет из нескольких файлов Excel. Для того, чтобы построить отчет в более менее читаемый вид, необходимо выполнить чтение из определенного диапазона ячеек. Вид примерно такой:
(1) устройство №1 канал такой
(1) -.-
(2) Устройство №2 и так далее.
Необходимо выполнить следующее
Считать список устройств в массив или куда-нибудь еще, отсортировать по номеру устройств, и вывести отчет. Как я пытаюсь считать из ячеек
C#
1
2
3
4
5
6
7
            1.List<String> arr = new List<string>();
            2.while (konf.Cells[row +1, "B"].Value2 != "-------")
            {
              3.  arr.Add(konf.get_Range(row+1,"B").Value2.ToString());
                row++;
                Otchet.Cells[row + 5, "E"] = arr[row];
            }
Ругается на третью строку.
An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in WindowsFormsApplication3.exe

Additional information: Исключение из HRESULT: 0x800A03EC

Как считать значения ячеек в массив для дальнейшего анализа?!?!

Добавлено через 1 час 31 минуту
Нашел как считывать!

Вот тут описано.
Экспорт в массив из Exel
Для себя сделал так: считывает из одного файла и пишет в другой
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 private void button1_Click(object sender, EventArgs e)
        {
            Excel.Application app = new Excel.Application();
            app.Workbooks.Open(@"C:\Путь до файла\сам файл.xls");
            Excel._Worksheet sheet = app.ActiveSheet;
            string[] matrix = new string[64];
            for (int i = 1; i < matrix.Length; i++)
            {
                matrix[i] = (string)((sheet.Cells[i, "B"] as Excel.Range).Value);
            }
            app.Quit();
            Excel.Application otchet = new Excel.Application();
            otchet.Workbooks.Add();
            otchet.Visible = true;
 
            Excel._Worksheet sOtchet = otchet.ActiveSheet;
            for (int i =1 ;i < matrix.Length; i++)
            {
                otchet.Cells[i, "A"] = (string)matrix[i];
            }
            otchet.Quit();
        }
0
26.08.2014, 12:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.08.2014, 12:19
Помогаю со студенческими работами здесь

Сделать один пдф файл из листов которые находятся в разных книгах excel
Добрый день. Как можно сделать один пдф файл из листов которые находятся в разных книгах excel....

Сравнение ячеек в двух разных таблицах
Имеются две очень объемные таблицы на разных листах одной книге , в первой таблице в третьем...

Сравнение двух ячеек из разных файлов
Здравствуйте! Есть 2 разных файла, в которых необходимо сравнить столбцы с номерами основных...

Сравнение данных из ячеек DataGridView на двух разных формах
Есть 2 формы, на одной есть DataGridView и на второй - DataGridView. Нужно сравнить данные из...

Сравнение ячеек на разных страницах и копирование строки при совпадении
Здравствуйте! Помогите пожалуйста! С vba раньше ничего не связвало, а сейчас появилась огромная...

Сравнение ячеек в VBA Excel
Добрый день, друзья. Выручите меня, пожалуйста. Итак, имеется табличка с возможностью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru