Манипулировать DDE с помощью VBA? - PullRequest
1 голос
/ 11 ноября 2010

У меня есть приложение CRM (GoldMine), которое действует как сервер DDE и позволяет перетаскивать поля слияния в документы Word, используя DDE, например:

{ DDE GOLDMINE DATA CONTACT2->UPREAWDAMT \* CHARFORMAT }

Как вы знаете, DDE не передает никакихформатирование - и я хотел бы использовать VBA для выполнения некоторых манипуляций со строками в этих полях, но я не уверен, как именно это сделать?

Я знаю, что могу открыть новый канал DDE и все такое ивытащить информациютаким образом - но я особенно хочу повторно использовать существующую информацию - не открывать новые каналы?

1 Ответ

1 голос
/ 30 января 2012

Я не знаю об использовании VBA, но GoldMine поддерживает выражения dBASE (как в файле Lookup.ini), и вы можете использовать их в шаблонах документов для манипулирования строками.Например:

{ IF { DDE GOLDMINE DATA &LEN(DTOS(CONTACT2->UPROLONG)) \* CHARFORMAT } > 0 { DDE GOLDMINE DATA WDATE(CONTACT2->UPROLONG,3) \* CHARFORMAT } { DDE GOLDMINE DATA '<<__>>\ ________\ '+SUBSTR(DTOS(DATE()),1,4) \* CHARFORMAT }}

Где LEN ([строка]), DTOS ([дата]), WDATE ([дата]), [формат]), SUBSTR ([строка], [начало], [длина]), ДАТА () - функции dBASE

...