0 / 0 / 1
Регистрация: 09.03.2016
Сообщений: 27
1

Математическая обработка DataGridView

22.04.2016, 14:05. Показов 643. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Реализовал программку для импорта Excel файла в DataGridView, теперь необходимо произвести математическую обработку данных. То есть считывать определенные ячейки из датагрида проводить вычисления и переходить к следующей ячейке. Естественно я не прошу у вас готовый код для этого. Просто подскажите в каком направлении мне нужно искать информацию, чтобы реализовать данных подход.
Если интересен код, то вот он:
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Data.OleDb;
 
using System.Windows.Forms;
 
namespace Excel_to_DGV
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void browse_Click(object sender, EventArgs e)
        {
            OpenFileDialog opf = new OpenFileDialog();
            opf.Filter = "Taблицы Excel'2007 (*.xlsx)|*.xlsx| Таблицы Excel'97 (*.xls)|*.xls|All files (*.*)|*.*";
            opf.RestoreDirectory = false;
            if (opf.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                this.txtPath.Text = opf.FileName;
            }
        }
 
            private void releaseObject(object obj)
        {
            try
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
                obj = null;
            }
            catch (Exception ex)
            {
                obj = null;
                MessageBox.Show("Unable to release the object " + ex.ToString());
            }
            finally
            {
                GC.Collect();
            }
        }
 
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
 
        }
 
        private void txtPath_TextChanged(object sender, EventArgs e)
        {
            txtPath.Size = new Size(450, 60);
        }
 
        private void textTill_TextChanged(object sender, EventArgs e)
        {
 
        }
 
        private void clear_Click(object sender, EventArgs e)
        {
            txtSheet.Clear();
            txtPath.Clear();
            txtFrom.Clear();
            txtTill.Clear();
            //dataGridView1.Rows.Clear();
            dataGridView1.Columns.Clear();
 
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
 
           
        }
 
        private void label1_Click(object sender, EventArgs e)
        {
 
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void tabPage1_Click(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
           try
            {
                string range = "SELECT * FROM " + "[" + txtSheet.Text + "$" + "A" + txtFrom.Text + ":" + "D" + txtTill.Text + "]";
                //подключение к сборке Microsoft Excel Driver v12 ACEODBC
                string constr = "Provider=Microsoft.ACE.OleDb.12.0;Data Source=" + txtPath.Text + ";Extended Properties='Excel 12.0 XML;HDR=YES;IMEX=1';";
                System.Data.OleDb.OleDbConnection con = new System.Data.OleDb.OleDbConnection(constr);
                con.Open();
                //объявление DataSet
                DataSet ds = new DataSet();
                //Объявление DataTable
                DataTable schemaTable = con.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
                string sheet1 = (string)schemaTable.Rows[0].ItemArray[2];
                string select = String.Format(range, sheet1); //SELECT * FROM [Calculating$A1:D10]
                System.Data.OleDb.OleDbDataAdapter ad = new System.Data.OleDb.OleDbDataAdapter(select, con);
                ad.Fill(ds);
                DataTable tb = ds.Tables[0];
                con.Close();
                con.Dispose();
                dataGridView1.DataSource = tb;
               
            }
            catch
            {
                MessageBox.Show("ERROR!");
            }
        }
    }
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2016, 14:05
Ответы с готовыми решениями:

Математическая обработка экспериментальных данных.
Задание: Для функции, заданной таблично, подобрать эмпирическую зависимость и найти параметры...

Математическая обработка экспериментальных данных
Для функции, заданной таблично, подобрать эмпирическую зависимость и найти параметры приближающей...

Математическая статистика. Обработка информации
Народ помогите с решением задачи: 3 вида информация поступает каждые 6 минут в 2 центра по закону...

Обработка MouseClick в DataGridView
День добрый, уважаемые форумчане! Внимание знатоки, вопрос: Есть 2 datagridview. Первый...

1
103 / 104 / 54
Регистрация: 23.03.2016
Сообщений: 462
22.04.2016, 14:37 2
Сперва получаем значение ячейки, приводим к нужному типу данных, обрабатываем его, записываем обратно.
Тут писал о свойствах, которые могут пригодиться. Организация работы с двухмерным массивом
0
22.04.2016, 14:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2016, 14:37
Помогаю со студенческими работами здесь

Обработка события Click в Datagridview
Не хотел открывать тему, хотел разобраться сам. Но полного ответа нигде по форуму не нашел, только...

Обработка нажатия на row в DataGridView
Здравствуйте! Подскажите пожалуйста, как отловить на какой row был клик мышью, если на row не висит...

Непонятная обработка CellContentClick в dataGridView
Уважаемые форумчане, непонятна работа с событием dataGridView1.CellContentClick. Есть форма, на...

DatagridView-обработка ошибки ввода
Добрый день! Возникло два вопроса: 1) Данные вносятся через DatagridView (Связка...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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