|
Excel+C#
|
|||
---|---|---|---|
#18+
Добрый день! Вот задание по которому необходимо написать программу: На языке C# реализовать программу, которая будет проводить корреляционный анализ результатов масштабного социологического исследования The European Values Study 2012 года и актуальную статистику по рождаемости детей в тех же странах, а также будет выделять наиболее яркие зависимости между общественными ценностями и показателями рождаемости детей. Я создала форму на которой расположены следующие компоненты: button1(открывает статистику в dataGridView), button2(считает корреляцию), dataGridView1(показывает статистику), textBox1(показывает путь файла). Вот код программы, который смогла написать(для открытия статистики): Код: 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.
Помогите написать код для button2(считает корреляцию, т.е. при нажатии на кнопку необходимо, чтобы в ячейку "B35" записывалась формула "=КОРРЕЛ(B2:AS2;B33:AS33)" и все изменения в Excel должны быть отображены в dataGridView1). ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2014, 07:40 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006, Код: c# 1. 2. 3. 4.
Потом добавляем в DataTable строку и присваиваем значение во 2-м столбце Теперь про ужасный код Код: c# 1. 2. 3.
Закрывать приложение только потому, что пользователь не выбрал файл, слишком жестоко. Впрочем, возможно вы хотели только закрыть Excel. Тогда нужен Код: c# 1.
А еще сразу возникает вопрос,а зачем мы открывали Excel, если пользователь ничего не сделал. И тут уже становится понятно, что нам нужен метод, который будет принимать в качестве параметра имя файла и что-то там делать. И вообще уничтожение объектов Excel лучше помещать в finally блока try...catch. Код: c# 1.
Массив объявляется, инициализируется и... нигде не используется. Так что он вам не нужен дважды: он не используется и у вас уже есть коллекция dt.Columns, содержащая те же данные. Считывание данных из Excel по одной ячейке низкоэффективно. Чем больше ячеек, тем больше времени это действие займет. Для этого лучше использовать ADO.NET. Обращение к конкретной ячейке "B35" превращает вашу программу в приложение, которое может работать только с одним листом Excel, что снижает ее практическую ценность. Злой преподаватель может добавить/удалить в таблицу Excel один столбец или одну стоку и прога уже будет работать некорректно. Лучше работать с номерами строк и столбцов. Как бы делал задание я. Считал бы данные с помощью ADO.NET в DataTable. Отобразил в гриде. После нажатия кнопки "Корреляция" произвел бы вычисления с ячейками DataTable. Формула корреляции есть здесь:. Показал бы результат вычисления в отдельном компоненте. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2014, 13:31 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok Формула корреляции есть здесь http://exceltip.ru/как-рассчитать-коэффициент-корреляц/ ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2014, 13:37 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok, спасибо большое за помощь. я вставила такой код: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Выдает ошибку: "Неявное преобразование типа Microsoft.Office.Interop.Excel.Range в Microsoft.Office.Interop.Excel.Worksheet". Может я пропустила какую то директиву using или еще что-то не так написала? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 09:55 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006 Код: c# 1.
вы присваиваете переменной типа Лист значение типа Диапазон, о чем вам и говорит компилятор используйте переменную нужного типа ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 10:27 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006igr_ok, спасибо большое за помощь. я вставила такой код: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Выдает ошибку: "Неявное преобразование типа Microsoft.Office.Interop.Excel.Range в Microsoft.Office.Interop.Excel.Worksheet". Может я пропустила какую то директиву using или еще что-то не так написала?Прошу прощения, немножко запутался в ваших переменных. Не NwSheet, а ShtRange ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 10:30 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok, после замены в коде на ShtRange, ошибок не выдает, но и программа ничего не делает. После нажатия на "Корреляцию" выходит такое окошко. В чем может быть проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 10:57 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006igr_ok, после замены в коде на ShtRange, ошибок не выдает, но и программа ничего не делает. После нажатия на "Корреляцию" выходит такое окошко. В чем может быть проблема? Может быть я не правильно прибавила строку в DataTable? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:02 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
Прикольно. А Вы не замужем? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:36 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKI, По моему Вы ошиблись темой или форумом) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:41 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006По моему Вы ошиблись темой или форумом) Да не, это Вы ошиблись двумя строчками кода) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:43 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIkira_006По моему Вы ошиблись темой или форумом) Да не, это Вы ошиблись двумя строчками кода) А вот с этого места, если можно поподробнее) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:46 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006А вот с этого места, если можно поподробнее) Не, поподробнее надо с другого места) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:48 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIkira_006А вот с этого места, если можно поподробнее) Не, поподробнее надо с другого места) Интересно, с какого же? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:49 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006Интересно, с какого же? С девятого) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:51 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKIkira_006Интересно, с какого же? С девятого) Вы очень «помогли», большое спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 11:54 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006igr_ok, после замены в коде на ShtRange, ошибок не выдает, но и программа ничего не делает. После нажатия на "Корреляцию" выходит такое окошко. В чем может быть проблема?Покажите код. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2014, 17:12 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok, Код: 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 07:38 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006, ShtRange = NwSheet .get_Range("B35", "B35"); ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 11:24 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok, Изменила, но все равно выдает эту ошибку.( ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 11:25 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
kira_006igr_ok, Изменила, но все равно выдает эту ошибку.(Проверяйте в отладчике,на что ругается. Если всё сделано правильно, то будет работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 12:35 |
|
Excel+C#
|
|||
---|---|---|---|
#18+
igr_ok, Прикрепляю скрин. Что это может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 13:59 |
|
|
start [/forum/topic.php?fid=20&msg=38653068&tid=1402887]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
521ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 341ms |
total: | 951ms |
0 / 0 |