2014-09-06 2 views
1

Я хочу автоматизировать генерацию диаграммы с метками формы «текст + процент», но я хочу иметь текст в строке и процент ниже (в следующей строке) , я использовать эту функцию для создания этикеток Картографическая:Вывод данных таблиц Delphi Excel OLE Chart

E.ActiveChart.ApplyDataLabels(xlDataLabelsShowLabelAndPercent, false,true, 
           true, false, true, true,false, false,'; '); 

Эта функция генерирует метки, разделенных точкой с запятой. Поэтому я в основном хочу иметь возможность заменить '; 'с чем-то, что говорит (Новая линия)?!?! или еще лучше, после проверки VBA я заметил, что внутренне он закодирован как «& Chr (10) &« Но у меня нет желаемого результата, если я использую эту кодировку в своей функции. Так что мой конечный результат должен быть что-то вроде этого: enter image description here

Что я должен послать в моем ApplyDataLabels функционировать

ответ

2

Chr (10) были в основном используются окном, чтобы вставить разрывы строк в тексте отображаются в окна управления.

Если он должен быть построен в виде строки, он, возможно, придется быть определен следующим образом:

E.ActiveChart.ApplyDataLabels(xlDataLabelsShowLabelAndPercent, false,true, 
           true, false, true, true,false, false, AnsiString(#10)); 
+1

я попробовал первый сам, прежде чем Seing своего ответа, и это не сработало. Однако второй способ работает нормально. Спасибо за ваше время +1 – user1137313

+0

Я отредактировал свой ответ. Я не использую Delphi, поэтому в первой версии я не был уверен, будет ли он достаточно умным, чтобы изменить Chr на Variant (который будет передан ApplyDataLabels), поэтому я добавил второй пример. Спасибо за ответ –

Смежные вопросы