Avatar billede xzaboo Praktikant
25. januar 2006 - 19:54 Der er 11 kommentarer og
1 løsning

Copy funktion

Hej..

Jeg ønsker, at vide hvordan jeg får lavet et stykke kode, som jeg vha. en kommandoknap i en formular, kan kopiere Data fra flere forskellige felter, til udklipsholderen (altså ligesom hvis jeg markerede et felt og trykkede 'CTRL + C')

Grunden til at jeg skal kunne dette, er at jeg skal kunne kopiere dataene ind i et andet tekst document.

Det skal gerne være sådan, at de forskellige Data fra felterne er adskilt med et mellemrum når det bliver kopieret ind.
Avatar billede mugs Novice
25. januar 2006 - 19:56 #1
Er det altid de samme felter?
Avatar billede xzaboo Praktikant
25. januar 2006 - 20:00 #2
ja, det er altid de samme felter. det er nemlig nogle adresse felter ol.
Avatar billede mugs Novice
25. januar 2006 - 20:07 #3
Det duede ikke.
Er det nogle af den aktuelle formulars felter der skal overføres til et Word dokument til f.eks et brev med et adressehoved?
Avatar billede xzaboo Praktikant
25. januar 2006 - 20:11 #4
nej, dataene skal overflyttes til et program der sender SMS-beskeder. Det er også derfor at den først skal sammentrække dataene til en tekst-streng.
Avatar billede mugs Novice
25. januar 2006 - 20:26 #5
Denne er MEGET kluntet så jeg vil ikke have point for den, men måske andre kan brygge videre på den. Opret et ubundet felt på din formular og indsæt denne i en kommandoknap:

Dim VARa As String
Dim VARb As String
Dim VARc As String
VARa = Me!Felt1
VARb = Me!Felt2
VARc = VARa & " " & VARb
Me!Tekst26 = VARc

Hvor Tekst26 er navnet på det ubundne felt. Marker teksten i Tekst26 og tryk CTL+x, åbn det tekstdokument og indsæt med CTL+c
Avatar billede xzaboo Praktikant
25. januar 2006 - 20:51 #6
øhm, denne del kunne jeg også godt selv se, men tænkte nu på, om man ikke kunne bruge følgende til et eller andet:

DoCmd.DoMenuItem acFormBar, acEditMenu, acCopy, , acMenuVer70

kan bare ikke få den til at gemme det i udklipsholderen.

og man kune vel også i stedet for at gemme værdien i et ubundet felt, så måske få den gemt i en eller anden variabel, og på den måde bare lad det hele ske automatisk, uden brugeren behøver at se noget til det.
Avatar billede fdata Forsker
25. januar 2006 - 22:32 #7
Opret et skjult felt, f.eks. SamletAdr, der samler dine data (Adr1 & " " & Adr2 & ...)
Benyt så:
  Me.SamletAdr.SetFocus
  RunCommand acCmdCopy
for at kopiere indholdet til klippebordet
Avatar billede fynbohans Nybegynder
26. januar 2006 - 23:36 #8
Access understøtter ikke Clipboard-objektet! Du må derfor bruge en Windows-funktion, som du sikkert kan finde på nettet.
Eller du kan selv lave/eller få lavet et consol-program, som gør det.
Her et sådan klip, jeg selv har brugt:

If IsNull([E_ADRESSE]) Then
  MailText = ""
Else
  MailText = [E_ADRESSE]
End If

Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FileExists("c:\mappe\textcopy.exe") Then
  Shell "c:\mappe\textcopy.exe " & MailText, vbHide
End If

MailText er feltet som kopieres og textcopy.exe er programmet.
Avatar billede fdata Forsker
27. januar 2006 - 12:49 #9
>>> fynbohans
Her du prøvet min kode? Den virker fint. Acccess kan fint udnytte Clipboard uden extra kodning.
Avatar billede fynbohans Nybegynder
27. januar 2006 - 13:48 #10
Citatet om Clipboad er fra en bog om en tidligere version. Men hvis objektet er med nu i
version 11 er det da fint. Prøver din kode i aften. Er du sikker på acCmdCopy bruger
Clipboard og ikke bare er en intern Access-function, som vist har været der hele tiden?
Avatar billede fdata Forsker
27. januar 2006 - 17:52 #11
Tja, det er da i hvert fald muligt at køre koden og derefter vælge "Sæt ind/Paste" i andre programmer, hvorved feltindholdet indsættes.
Avatar billede fdata Forsker
24. august 2006 - 21:49 #12
Det var godt nok en gammel svend  ;o)
Tak for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester