2010-11-11 6 views
1

У меня есть приложение CRM (GoldMine), который действует в качестве DDE сервера и позволяет вытягивать объединить поля в документы Word, используя DDE так:Манипулировать DDE с помощью VBA?

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

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

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

ответ

1

Я не знаю об использовании 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 ([строка] , [старт], [длина]), DATE() - функции dBASE