С Новым годом! Форум программистов, компьютерный форум, киберфорум
C/C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C/C++ Full OLE Server + aggregation на MFC https://www.cyberforum.ru/ c-cpp/ thread2576131.html
Разрабатываю full OLE Server на MFC, который должен аггрегировать с MSHTML, как минимум, для отображения HTML как в представлении клиента, так и в серверном представлении. В случае inplace-активации - понятно - IOleClientSite, IOleInPlaceSite и IOleDocumentSite реализованы на клиенте посредством ColeClientItem и COleDocObjectItem, кот. выполняют активизацию и отображение. Непонятно, как...
C/C++ Работа с БД: с чего начать
Есть файл Parik.accdb (Оффис 2016г.), Винда х64, работаю в VS2019. Хочу написать приложение в С++, делающее запрос к БД и выводящее результат в консоль. С чего начать? Нужно ли установить какие-нибудь библиотеки, посмотреть, что показывает Администратор источника данных ODBC (или использовать не ODBC)? Какой шаблон проектов (пустое приложение, приложение MFC, консольное приложение) выбрать? ...
C/C++ Работа с браузерами https://www.cyberforum.ru/ c-cpp/ thread2568045.html
Есть у меня программа бот, которая работает с IE, через его интерфейс IWebBrowser2 Вытаскивает html, ищет координаты объектов на странице и нажимает их. Ссылки, кнопки, комбобоксы и прочее... Но эта штука конечно работает только с IE. Появилась необходимость расширить это на другие основные браузеры Firefox, Chrome, Edge, Opera. В ходе поисков набрел на WebDriver. Удобная штука, но по...
C/C++ Inside OLE Есть у кого книга в электронке Inside OLE / Inside OLE second? https://www.cyberforum.ru/ c-cpp/ thread2553048.html
C/C++ Excel и C++
Помогите пожалуйста. Хочу использовать в программах C++ данные из Excel. Прочитал про систему OLE, но ничего не понял... Объяснения везде запутанны. Не понимаю какие нужны библиотеки, какая среда программирования, какие функции и тд. Нужно всего лишь брать данные из ячейки записывать в переменную и записывать обратно. Помогите разобраться! Сайты, советы, книги - поможет все! Заранее спасибо
C/C++ Петцольд OLE IMalloc https://www.cyberforum.ru/ c-cpp/ thread2527377.html
Пример из книги падает во время выполнения, компилятор пишет ересь. Падения происходит при попытке достучаться к любой услуге интерфейсов IUnknown или IMalloc. О том что компилятор болеет - четко видно на приложенном скрине. pDAlloc не может быть nullptr, если б не удалось выделать память new бросил бы std::bad_alloc. #ifndef IMALLOC_H #define IMALLOC_H #include <windows.h>
C/C++ Правильный путь к файлу Народ такая проблема.. есть код: 1 axWindowsMediaPlayer1->URL ="D:\\Programm\\Game_for_Sonja\\Cartoons\\Cartoon_1.mp4"; 2 axWindowsMediaPlayer1->Ctlcontrols->play(); все работает, но я сделаю прогу установочной Installer то есть адрес видео D:\\Programm\\Game_for_Sonja\\Cartoons\\Cartoon_1.mp4 после установки поменяется https://www.cyberforum.ru/ c-cpp/ thread2523064.html C/C++ Transpose SafeArray
Всем привет. Набросал функцию для транспонирования SafeArray (двухмерный), с любым типом данных. Вопрос знатокам: можно ли сделать эффективно, не прибегая к низкому уровню, к примеру, через VType или каким либо еще, отличным от представленного, методом? Ранее пробовал через switch(VType )... case VT... - много кода. Через преобразования типа указателя, опять же адресная арифметика. Вообщем,...
C/C++ Как убрать script error сообщения в СОМ объекте Internet Explorer? (ATL) https://www.cyberforum.ru/ c-cpp/ thread2493365.html
Создаю компонент браузера на форме, вида AtlAxWinInit(); hBrowser = CreateWindowEx(WS_EX_STATICEDGE, "AtlAxWin", "https://yandex.ru", WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_HSCROLL , 0, 0, 0, 0, hWnd, (HMENU)IDC_BROWSER, GetModuleHandle(NULL), NULL);
C/C++ OLE для чайника Добрый день! Нужна помощь с работой с данными Excel. Работаю в Visual Studio C++. Нужно забирать данные из файла Excel в программу, производить различные вычисления и записывать их обратно. В интернете нашел, что это можно осуществить при помощи технологии OLE, но нигде не нашел понятного и полного объяснения работы с этой технологией и где ее брать. Подскажите, где брать эту информацию, или же... https://www.cyberforum.ru/ c-cpp/ thread2487980.html
C/C++ Программно работать с recent file list в PowerPoint
получить доступ к recent file list в PowerPoint. Нужна помощь
C/C++ Для чего эти бессмысленные строчки ? Изучаю написание драйверов для пользовательского режима Виндов. Для начала на малознакомом мне C++ (ранее писал только на чистом C, когда не на ассемблере) раз на нем пишут подобное, а потом может переведу на другой, более любимый язык когда все станет ясно что там к чему и почему. Вот такой фрагмент чужого образцово показательного драйвера меня удивил extern "C" BOOL WINAPI DllMain(HINSTANCE... https://www.cyberforum.ru/ c-cpp/ thread2479478.html
0 / 0 / 0
Регистрация: 26.05.2019
Сообщений: 1
0

Excel графики - C/C++ - Ответ 14392834

03.04.2020, 18:07. Показов 19545. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Имеется данный код создание книги Excel. Как в ней создать график?

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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
#include <windows.h>
 
// Program Demonstrates Late Bound OLE COM Access To MS Excel Spreadsheet //Using C++.
 
#include <tchar.h>
 
// "Hello, World! Is Written To Cell A1 Of Sheet #1 In Visible Workbook. //IDispatch
 
#include <cstdio>
 
// Interface Using GetIDsOfNames() And Invoke() Used Throughout.
 
const CLSID CLSID_XLApplication = {0x00024500,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}}; // CLSID of Excel
 
const IID IID_Application = {0x000208D5,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}}; // IID of _Application
 
int main()
 
{
 
DISPPARAMS NoArgs={NULL,NULL,0,0};
 
// This variable is used in easiest Invoke() call when the method has no //parameters. When
 
IDispatch* pXLApp=NULL;
 
// using the IDispatch interface in conjunction with Invoke() method //parameters must be loaded
 
DISPPARAMS DispParams;
 
// into a DISPPARAMS struct. The actual parameters are loaded //into VARIANTs, and one of the
 
VARIANT CallArgs[1];
 
// members of the DISPPARAMS struct is a pointer to the array //of VARIANT. The other members
 
VARIANT vResult;
 
// of the DISPARAMS struct tell Invoke() how many parameters //are being passed, as well as other
 
DISPID dispid;
 
// specifics such as the type of the call (propput, propget, etc.).
 
HRESULT hr;
 
CoInitialize(NULL);
 
hr=CoCreateInstance(CLSID_XLApplication, NULL, CLSCTX_LOCAL_SERVER, IID_Application, (void**)&pXLApp);
 
if(SUCCEEDED(hr))
 
{
 
OLECHAR* szVisible=(OLECHAR*)L"Visible";
 
hr=pXLApp->GetIDsOfNames(IID_NULL,&szVisible,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
VariantInit(&CallArgs[0]);
 
CallArgs[0].vt = VT_BOOL;
 
CallArgs[0].boolVal = TRUE;
 
DISPID dispidNamed = DISPID_PROPERTYPUT;
 
DispParams.rgvarg = CallArgs;
 
DispParams.rgdispidNamedArgs = &dispidNamed;
 
DispParams.cArgs = 1;
 
DispParams.cNamedArgs = 1;
 
VariantInit(&vResult);
 
// Call or Invoke _Application::Visible(true);
 
hr=pXLApp->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_PROPERTYPUT,&DispParams,&vResult,NULL,NULL);
 
OLECHAR* szWorkbooks=(OLECHAR*)L"Workbooks";
 
hr=pXLApp->GetIDsOfNames(IID_NULL,&szWorkbooks,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
IDispatch* pXLBooks=NULL; // Get Workbooks Collection
 
VariantInit(&vResult);
 
// Invoke _Application::Workbooks(&pXLBooks) << returns IDispatch** of //Workbooks Collection
 
hr=pXLApp->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_PROPERTYGET,&NoArgs,&vResult,NULL,NULL);
 
if(SUCCEEDED(hr))
 
{
 
pXLBooks=vResult.pdispVal;
 
IDispatch* pXLBook=NULL; // Try to add Workbook
 
OLECHAR* szAdd=(OLECHAR*)L"Add";
 
hr=pXLBooks->GetIDsOfNames(IID_NULL,&szAdd,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
VariantInit(&vResult);
 
// Invoke Workbooks::Add(&Workbook) << returns IDispatch** of Workbook //Object
 
hr=pXLBooks->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_METHOD|DISPATCH_PROPERTYGET,&NoArgs,&vResult,NULL,NULL);
 
if(SUCCEEDED(hr))
 
{
 
pXLBook=vResult.pdispVal;
 
OLECHAR* szActiveSheet=(OLECHAR*)L"ActiveSheet";
 
hr=pXLApp->GetIDsOfNames(IID_NULL,&szActiveSheet,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
IDispatch* pXLSheet=NULL; // Try To Get ActiveSheet
 
VariantInit(&vResult);
 
// Invoke _Application::ActiveSheet(&pXLSheet); << ret IDispatch** to Worksheet (Worksheet)
 
hr=pXLApp->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_PROPERTYGET,&NoArgs,&vResult,NULL,NULL);
 
if(SUCCEEDED(hr))
 
{
 
pXLSheet=vResult.pdispVal;
 
OLECHAR* szRange=(OLECHAR*)L"Range";
 
hr=pXLSheet->GetIDsOfNames(IID_NULL,&szRange,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
IDispatch* pXLRange=NULL;
 
VariantInit(&vResult);
 
CallArgs[0].vt=VT_BSTR,
 
CallArgs[0].bstrVal=SysAllocString(L"A1");
 
DispParams.rgvarg = CallArgs;
 
DispParams.rgdispidNamedArgs = 0;
 
DispParams.cArgs = 1; // Try to get Range
 
DispParams.cNamedArgs = 0; // Invoke _Worksheet::Range("A1") << returns IDispatch** to dispinterface Range
 
hr=pXLSheet->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_PROPERTYGET,&DispParams,&vResult,NULL,NULL);
 
if(SUCCEEDED(hr))
 
{
 
pXLRange=vResult.pdispVal;
 
OLECHAR* szValue=(OLECHAR*)L"Value";
 
hr=pXLRange->GetIDsOfNames(IID_NULL,&szValue,1,GetUserDefaultLCID(),&dispid);
 
if(SUCCEEDED(hr))
 
{
 
VariantClear(&CallArgs[0]);
 
CallArgs[0].vt = VT_BSTR;
 
CallArgs[0].bstrVal = SysAllocString(L"Hello, World!");
 
//Try to set data to cell A1 using pXLRange
 
DispParams.rgvarg = CallArgs;
 
DispParams.rgdispidNamedArgs = &dispidNamed;
 
DispParams.cArgs = 1;
 
// Try to write to Value member of Range dispinterface
 
DispParams.cNamedArgs = 1;
 
// Invoke Range::Value(L"Hello, World!")
 
hr=pXLRange->Invoke(dispid,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_PROPERTYPUT,&DispParams,NULL,NULL,NULL);
 
pXLRange->Release();
 
}
 
}
 
}
 
pXLSheet->Release();
 
}
 
}
 
pXLBook->Release();
 
}
 
}
 
pXLBooks->Release();
 
}
 
}
 
getchar();
 
}
 
VariantInit(&vResult); // Try to do _Application::Close()
 
hr=pXLApp->Invoke(0x0000012e,IID_NULL,LOCALE_USER_DEFAULT,DISPATCH_METHOD,&NoArgs,&vResult,NULL,NULL);
 
pXLApp->Release();
 
}
 
CoUninitialize();
 
return 0;
 
}


Вернуться к обсуждению:
Excel графики C/C++
0
Заказать работу у эксперта
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.04.2020, 18:07
Готовые ответы и решения:

Графики Excel в C#
Подскажите пожалуйста, как построить график по двум столбцам...тоесть у меня есть два...

Графики в Excel
Помогите еще раз пожалуйста, нужно как в образце построить графики, один график сделала второй не...

Графики в Excel
Ребята срочно нужна помощь , нужно сделать в екселе график на основе данных в файле , я вообще не...

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

1
03.04.2020, 18:07
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.04.2020, 18:07
Помогаю со студенческими работами здесь

Графики по данным из Excel
Здравствуйте, не подскажите как построить график в Матлабе, используя данные из таблицы Exel....

Графики из Excel в Delphi
Возможно ли графики из Excel загрузить в Delphi? Или же в Delphi строить по таблице из Excel?...

Задачи в Excel (таблицы и графики)
Подобный вариант разобран на фото, так же там прикреплен мой, 4 вариант, нужно сделать по подобию,...

Построить в Excel и MathCAD на одних осях, но на разных интервалах графики
Построить в Excel и MathCAD на одних осях, но на разных интервалах графики двух составных функций

0
Новые блоги и статьи
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru