12. november 2002 - 14:46Der er
29 kommentarer og 1 løsning
Indsættelse af (hyper) link i formular
Jeg har en formular hvori der er en del felter, der fungerer som links!!!
Når man skal indsætte links, foregår det (lige nu) ved at man stiller sig i feltet - og vælger Indsæt Hyperlink !!
Spørgsmål.... Kan man ikke (hvordan) lave en kommandoknap, som åbner dialogboks til indsættelse af link... OG - åbner som standard i en forud defineret sti f.eks D-drev ???
Det vil lette arbejdsgangen for indsættelse af link - hvor vi p.t. skal igennem "mange" mapper/stier inden man kommer frem til den ønskede sti !!!
De fleste virksomheder har efterhånden bevist, at AI virker.
Pilotprojekter leverer resultater. Medarbejdere bruger generative AI-værktøjer. Nye use cases dukker op på tværs af organisationen.
Jeg kan sende dig en testdb, der ved et tryk på en kommandoknap åbner stifinderen, hvor du kan vælge en fil hvis sti overføres til en tekstboks i formularen. Formularen vil hver gang denne åbnes / skifter post finde den fil hvis sti er lagret i tekstboksen.
Eksemplet er beregnet til at have billeder i en db, hvor billeder ligger udenfor db, men det skal være muligt at skifte billede. Uanset om linket refererer til en db, Word-fil eller billede vil det blive åbnet.
kjar75 -> Den fremsendte testdb virker ikke helt efter min hensigt !!!
Nej - men den sætning kan ikke bruges til ret meget! Den fremsendte db, fungerer efter min beskrivelse 12/11. Men på hvilken måde fungerer den ikke til dit behov? Hvis du gav en forklaring, var det muligt at vi kunne strikke en løsning sammen, der passer lige netop til dit behov.
'schoesler' & 'mugs' -> har modtaget begge testdb + vejledning ! tak :-)) Det var nu ikke lige det jeg søgte !!
Jeg har lavet en formular med nogle felter, hvor man kan indsætte et link. Der behøves IKKE er være et link til hvert felt !!
Mit spørgsmål er - om man kan lave en kommandoknap, som udfører følgende kommando (når man står i feltet hvor linket skal indsættes)
Åbn "indsæt hyperlink dialogboks" Vælg sti f.eks E-drev - som STANDARD !!!
Som det er lige nu, skal man igennem en masse mapper - inden man kommer frem til det dokument/fil man vil vedhæfte som link !!
Det er for at "spare" denne lange gang, at "indsæt link dialogboksen" som standard skal åbne op på et specifikt angivet drev - og ikke som nu, på det drev/sti hvor mdb ligger !!!
'mugs' - ked af hvis jeg ikke har udtrykt mit ønske klart fra starten!
Har dog fået testdb af 'schoesler' - den virker næsten perfekt, men...
Har kopieret koden fra modulet og indsat nedenunder... Mit spørgsmål til denne kode er. Hvis der er et link i forvejen, og man trykker på kommandoknap "indsæt link" kommer indsæt boks også frem osv... Men hvis man "fortryder" - så slettes det link der stod i forvejen !!! Hvad skal der slettes/tilføjes i modulet for at linket ikke bliver slettet hvis man fortryder ???
Option Compare Database
Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _ "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Private Type OPENFILENAME lStructSize As Long hwndOwner As Long hInstance As Long lpstrFilter As String lpstrCustomFilter As String nMaxCustFilter As Long nFilterIndex As Long lpstrFile As String nMaxFile As Long lpstrFileTitle As String nMaxFileTitle As Long lpstrInitialDir As String lpstrTitle As String flags As Long nFileOffset As Integer nFileExtension As Integer lpstrDefExt As String lCustData As Long lpfnHook As Long lpTemplateName As String End Type
Function LaunchCD(strform As Form) As String Dim OpenFile As OPENFILENAME Dim lReturn As Long Dim sFilter As String OpenFile.lStructSize = Len(OpenFile) OpenFile.hwndOwner = strform.Hwnd sFilter = "All Files (*.*)" & Chr(0) & "*.*" & Chr(0) & _ "JPEG Files (*.JPG)" & Chr(0) & "*.JPG" & Chr(0) OpenFile.lpstrFilter = sFilter OpenFile.nFilterIndex = 1 OpenFile.lpstrFile = String(257, 0) OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1 OpenFile.lpstrFileTitle = OpenFile.lpstrFile OpenFile.nMaxFileTitle = OpenFile.nMaxFile OpenFile.lpstrInitialDir = "i:\Kundeinfo" OpenFile.lpstrTitle = "Select a file from the RELIEF folder on the SERVER" OpenFile.flags = 0 lReturn = GetOpenFileName(OpenFile) If lReturn = 0 Then MsgBox "A file was not selected!", vbInformation, _ "Select a file from the RELIEF folder on the SERVER" Else LaunchCD = Trim(OpenFile.lpstrFile) End If End Function
Jeg har afprøvet db igen, og hvis jeg afbryder funkrionen, så slettes det gamle link ikke. Kan du forklare lidt nærmere i hvilken situation det gamle link slettes? Har du en eksisterende post med et link, hvor tekstboksens link slettes når du afbryder indsættelsen af et nyt link?
Jeg skal på arbejde, og er ikke i stand til yderligere kommentarer før efter kl 23:00
Så blev det alligevel ikke til arbejde, min arbejdsgiver havde lavet en fejl,og sat 2 mand på vagtlisten - he he.
kjar75 -> Din kode er korrekt. Jeg har igen afprøvet min testdb, og den giver ikke de symptomer du omtaler:
- Når jeg opretter en ny post og indsætter et link men afbryder oprettelsen, bliver der ikke oprettet et link, og tekstboksen forbliver tom. - Når jeg åbner en eksisterende post, og prøver at ændre linket men afbryder, bliver det gamle link stående i tekstboksen.
Jeg har forstået på dine kommentarer, at du har kopieret koden, og indsat den i din egen db. Fejlen må ligge i din db, og ikke i min kode.
Måske schoesler kan give en kommentar og oplyse, om han har dette symptom. kjar75: Den db du fik fra schoesler er min, så hvis schoesler også har symptomet, har jeg misforstået det hele. Evt. kan du sende din db (konverteret til Access97) til : mugs@mail.dk
Schoesler og kjar75 -> Jeg har modtaget og åbnet filen fra schoesler. I har fuldstændig ret. Men den modtagne fil er ikke min. Min db er modificeret af schoesler og den har ganske rigtigt de oplyste symptomer. Det vil jeg se på senere.
Jeg har rettet scoesler's db. Fejlen var, at formularens felt var defineret som et hyperlink. Når man forsøger at indsætte et nyt link, vil det gamle blive slettet. I min version indsættes hyperlinket i en tekstboks defineret som tekst. Derfor bliver teksten stående i feltet når indsættelse af et nyt hyperlink (ny tekst) afbrydes. Visningen af det linkede dokument kan gøres på flere måder:
- I formularens OnCurrent. - Ved tryk på en kommandoknap, hvis egenskab hyperlink sættes = tekstboksen.
'mugs' Jeg har just sendt en db til dig pr mail !! Har lavet en db og indsat ovenstående kode i modul !!
MEN - som du kan afprøve i db, har jeg stadig det omtalte problem !! Er desværre ikke helt med på, hvordan jeg kan løse problemet med dine ovenstående forslag !!!
Vil du prøve om du kan få den fremsendte db til at "makke ret" ??
OG - jeg har lavet 2 felter til indsættelse af links !!! Kan kommandoknappen ikke virke til begge felter ?? Altså ikke sætte samme link ind begge steder - men udføre kommando, uafhængigt af i hvilket felt man står ???
PS: Skal der flere point i puljen ?? Det er efterhånden ved at være et længere indlæg :-)
kjar75 -> Jeg har modtaget din db, men min PC kan ikke genkende databaseformatet (Jeg bruger Access97). Hvis du benytter Access2000 kan du konvertere den til Access97 inden du sender. Benytter du XP kan den ikke deles med 97 brugere.
Jeg vil tage den med på arbejde imorgen (Bruger xp der) og prøve at åbne den derfra.
Men jeg ville gerne om du her kan sige om min tilsendte db fungerer tilfredsstillende, så jeg ved om jeg er på rette spor!
Tak for hjælpen og info :-) Ked af det sene svar !! Fik svar på mit spørgsmål !! Mit ønske kan ikke lade sig gøre (som jeg vil have det) Thanks anyway :-))
Synes godt om
Ny brugerNybegynder
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.