![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 21.06.2010
Сообщений: 5
|
![]()
Подскажите, пожалуйста, как сделать заливку прямоугольника в Excel.
Переделываю код макросов под Visual C++. Но почему-то при попытке залить прямоугольник черным выдает ошибку unhandled exception... (компилится нормально, сбой именно при выполнении кода) Полный код макроса: ActiveSheet.Shapes.AddShape(msoShap eRectangle, 313.5, 268.5, 165.75, 6#). _ Select Selection.ShapeRange.Fill.Visible = msoTrue Selection.ShapeRange.Fill.Solid Selection.ShapeRange.Fill.ForeColor .SchemeColor = 8 Selection.ShapeRange.Fill.Transpare ncy = 0# Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.DashStyle = msoLineSolid Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Line.Transpare ncy = 0# Selection.ShapeRange.Line.Visible = msoTrue Selection.ShapeRange.Line.ForeColor .SchemeColor = 64 Selection.ShapeRange.Line.BackColor .RGB = RGB(255, 255, 255) Пробовал адаптировать все эти действия для C++, но как уже писал выше - ошибка. P.S.: в 2003 Экселе прямоугольник по умолчанию создается почему-то с белой заливкой, а в 2007 - с синей. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
![]()
Попробуйте с VB.Net перевести на С++
Проверил,все работает Код:
Анализ,обработка данных Недорого
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
Можно чуть проще:
Код:
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#4 |
Регистрация: 21.06.2010
Сообщений: 5
|
![]()
doober, спасибо, завтра напишу ответ
SAS888, так пробовал, ошибка |
![]() |
![]() |
![]() |
#5 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 21.06.2010
Сообщений: 5
|
![]()
doober, не получилось. вообще если fill использовать, то ошибка.
EducatedFool, не пробовал. завтра исправлю упущение Последний раз редактировалось UFO665; 23.06.2010 в 20:32. |
![]() |
![]() |
![]() |
#7 |
Регистрация: 21.06.2010
Сообщений: 5
|
![]()
может это поможет. в файле stdafx.h прописано:
// Импортируем файл Program Files\Common Files\Microsoft Shared\OFFICE11(или 12)\MSO.DLL #import "libid:2DF8D04C-5BFA-101B-BDE5-00AA0044DE52"\ rename("RGB","_RGB") using namespace Office; // Ипортируем файл Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB #import "libid:0002E157-0000-0000-C000-000000000046" using namespace VBIDE; // Импортируем файл Program Files\Microsoft Office\Office11(или 12)\EXCEL.EXE #import "libid:00020813-0000-0000-C000-000000000046"\ rename("RGB","ex_RGB") \ exclude("I","IPicture") \ exclude("I","IFont") \ rename("DialogBox","ex_DialogBox") \ rename("CopyFile","ex_DialogBox") \ rename("ReplaceText","ex_ReplaceTex t") using namespace Excel; Последний раз редактировалось UFO665; 23.06.2010 в 20:31. |
![]() |
![]() |
![]() |
#8 |
Регистрация: 21.06.2010
Сообщений: 5
|
![]()
забил на заливку. нарисовал в этом прямоугольнике линию. проблема решена другим путем)
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Площадь прямоугольника | AndrSil | Помощь студентам | 5 | 22.04.2010 23:23 |
Вращение прямоугольника | Ponaroshku | Паскаль, Turbo Pascal, PascalABC.NET | 11 | 03.11.2009 09:22 |
Excel заливка + формула | DEHcuk | Microsoft Office Excel | 12 | 15.10.2009 14:27 |
Вращение прямоугольника | Ponaroshku | Общие вопросы Delphi | 0 | 25.05.2009 23:09 |
Стороны прямоугольника | Caragius | Microsoft Office Excel | 8 | 27.12.2008 03:02 |