Funktionen DDESend

Du kan bruge funktionen DDESend til at starte en Dynamic Data Exchange (DDE)) med et andet program og sende en oplysning til dette program fra et kontrolelement i en formular eller en rapport.

Du kan f.eks. bruge funktionen DDESend i egenskaben ControlSource for en tekstboks til at sende de data, der er vist i tekstboksen, til en bestemt celle i et Microsoft Office Excel 2007-regneark.

Syntaks

DDESend(program, emne, element, data)

Syntaksen for funktionen DDESend består af følgende argumenter:

Argument

Beskrivelse

program

Et strengudtryk, som angiver et program, der kan deltage i en DDE-samtale. Normale er program navnet på en .exe-fil (uden filtypenavnet .exe) til et Microsoft Windows–baseret program, f.eks. Excel. Hvis du f.eks. vil starte en DDE-samtale med Excel, skal du skrive "Excel" for argumentet program.

emne

Et strengudtryk, som er navnet på et emne, der genkendes af program. Argumentet emne er ofte et dokument eller en datafil. I dokumentet til det andet program finder du en liste over mulige emner.

element

Et strengudtryk, som er navnet på et dataelement, der genkendes af program. I dokumentationen til det andet program finder du en liste over mulige elementer.

data

En streng eller et udtryk, der indeholder de data, der skal sendes til program.


Bemærkninger

Med funktionen DDESend startes en DDE-samtale med program og emne, og element identificeres som det dataelement, som modtager data. Hvis program f.eks. er Excel, kan emne være "Sheet1", og element kan være et id for række og kolonne, f.eks. "R1C1" eller navnet på et område af celler.

Argumentet data angiver de oplysninger, du vil sende. Det kan være en konstantstreng, f.eks. "Report prepared by John", eller det kan være et udtryk, som indeholder resultatet af en funktion, hvormed der oprettes en streng, f.eks. "Prepared on " & Date(). Hvis element henviser til mere end én oplysninger, f.eks. et navngivet område i et Excel-regneark, som indeholder flere celler, sender funktionen DDESenddata til den første indtastning.

I følgende eksempel sender funktionen DDESend strengen "Some text" til cellen i række 1, kolonne 1 i et Excel-regneark. Du kan angive dette udtryk for en tekstboks i egenskabsboksen Kontrolelementkilde i kontrolelementets egenskabsark:

=DDESend("Excel", "Sheet1", "R1C1", "Some text")

Lad os antage, at du vil sende data fra et bundne kontrolelementer i en Microsoft Office Access 2007-formular til en celle i et Excel-regneark. Egenskaben Kontrolelementkilde for det bundne kontrolelement indeholder allerede et feltnavn og -udtryk. Du kan oprette en anden tekstboks eller kombinationsboks og indstille egenskaben Kontrolelementkilde for den til et udtryk, der omfatter funktionen DDESend, hvor data er navnet på det bundne kontrolelement. Hvis du f.eks. har en bundet tekstboks med navnet Efternavn, kan du oprette en anden tekstboks og indstille egenskaben Kontrolelementkilde for den til følgende:

=DDESend("Excel", "Sheet1", "R1C1", [LastName])

Dette midlertidige kontrolelement skal enten være en tekstboks eller en kombinationsboks. Du kan ikke bruge navnet på et bundet kontrolelement som argumentet data for et afkrydsningsfelt eller en gruppeboks.

Du kan kun bruge funktionen DDESend i indstillingen af egenskaben Kontrolelementkilde for en tekstboks, en gruppeboks, et afkrydsningsfelt eller en kombinationsboks i en formular. Du kan ikke kalde funktionen DDESend fra et VBA-modul (Visual Basic for Applications).

Hvis du bruger funktionen DDESend, skrivebeskyttes kontrolelementet i formularvisninger og vis udskrift. Da egenskaben Kontrolelementkilde også er skrivebeskyttet i Formularvisning og Vis udskrift, skal ændringer af kontrolelementet foretages i designvisning.

Microsoft Windows og computerens hukommelse og ressourcer bestemmer, hvor mange DDE-samtaler der maksimalt kan være åbne samtidigt. Hvis samtalen ikke kan startes, fordi program ikke kører, eller ikke genkender emne, eller hvis det maksimale antal samtaler allerede er nået, returnerer funktionen DDESend en Null-værdi.

Bemærk: Det andet program kan konfigureres, så det ignorerer din anmodning om en DDE-samtale. I dette tilfælde returneres en Null-værdi med funktionen DDESend. På samme måde kan du indstille Access til at ignorere anmodninger fra andre programmer: Klik på Access-indstillinger i menuen Filer, klik derefter på Avanceret i dialogboksen Programindstillinger. Vælg Ignorer DDE-anmodninger under DDE-handlinger.

Tip!     Hvis du har brug for at manipulere et andet programs objekter fra Access, kan du overveje at bruge Automation .

Følgende tabel viser funktionsmåden for funktionen DDESend, når du bruger den sammen med de enkelte kontrolelement.

Kontrolelement

Bemærkninger

Tekstboks eller kombinationsboks

Hvis tekstboksen eller kombinationsboksen ser tom ud i Formularvisning og Vis udskrift, kan du indstille egenskaben Synlig for den til Falsk.

Argumentet data kan henvise til et andet kontrolelement. I følgende eksempel er vist, hvordan du kan sende indholdet af et kontrolelement med navnet Efternavn til et Excel-regneark:

=DDESend("Excel", "Sheet1", "R1C1", [LastName])

Gruppeboks

Ingen af valgknapperne i gruppeboksen er valgt i Formularvisning og Vis udskrift. Du kan gøre gruppeboksen (og knapperne i den) usynlige ved at indstille egenskaben Synlig for den til Falsk.

Argumentet data skal indeholde numeriske data, f.eks. "2". Hvis argumentet data ikke er numerisk, sender funktionen DDESend ikke oplysningerne, og element ændres ikke.

Afkrydsningsfelt

Afkrydsningsfeltet nedtonet i Formularvisning og Vis udskrift. Du kan gøre det usynligt ved at indstille egenskaben Synlig for den til Falsk.

Argumentet data skal indeholde numeriske data, f.eks. "2". Hvis argumentet data ikke er numerisk, sender funktionen DDESend ikke oplysningerne, og element ændres ikke.

Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×