14. august 2009 - 17:55Der er
1 kommentar og 1 løsning
Tilføje kontaktpersoner fra excel til word-formes
Hej Eksperter
Jeg er helt nu i VBA
Jeg har lavet en brevskabelon, når man starter skabelonen kommer der en dialogboks "Forms" hvor føgende skal udfylde: firmanavn, personer, adresse, post nr og by og når man siger ok bliver det skrevet i dokumentet.
Det min spørgsmål går på er kan man lave et rullegardin "combobox" som viser kontaktpersonerne fra et excel-dokument og når man har valgt den personer man skal bruge, bliver felterne "teksboks" firmanavn, personer, adresse, post nr og by. udfylt i dialogboks "Forms".
Håber at jeg har udtryk mig rigtig, og at i vil bare over med mig da jeg ikke har den store viden for VBA.
Ekspelet:
Tekste i rullegardin "combobox"
Hele navn/Firma Casper Parker Petersen/Alectia A/S
Kommunerne har digitaliseret indgangen for borgerne. Men bag skærmen håndteres mange arbejdsgange stadig manuelt mellem systemer, mails og organisatoriske siloer.
Ja - det skulle kunne lade sig gøre - hvordan er de enkelte data placeret i regnearket? Evt. send den/de relevante fil(er) pr.mail - adr under min profil.
VBA-Kode, der viser/henter data fra separat Excel-fil til Word-skabelon - i eksisterende Userform:
Const standardSti = "C:\Documents and Settings\pb.KHNBPB\Skrivebord\Parker\" Const filnavnXLS = "ProjektAdresseListe.xls" Const startRækXls = 2 Dim adrXLS Dim sti Private Sub UserForm_activate() sti = standardSti
åbnAdresseFilen visAdresser lukAdresseFilen End Sub Private Sub annuller_Click() Unload brev End Sub Private Sub kontakt_Click() 'kontakt er valgt Rem hent den valgte adresse åbnAdresseFilen hentAdressen Me.kontakt.ListIndex lukAdresseFilen End Sub Private Sub hentAdressen(ix) 'overtfør til userform Dim ræk As String ræk = ix + startRækXls
With adrXLS.Activeworkbook.Sheets(1) Me.firma = .Range("A" & ræk) Me.att = .Range("B" & ræk) Me.adr = .Range("F" & ræk) Me.post = .Range("G" & ræk) Me.by = .Range("H" & ræk) End With End Sub Private Sub åbnAdresseFilen() Set adrXLS = CreateObject("Excel.Application") With adrXLS .Workbooks.Open sti + filnavnXLS End With End Sub Private Sub visAdresser() Dim række As Long, ræk As String Dim kontakt As String, firma As String With adrXLS.Activeworkbook.Sheets(1) For række = startRækXls To 65000 ræk = række If .Cells(ræk, 1) = "" Then Exit For Else Me.kontakt.AddItem .Range("B" & ræk) + "/" & .Range("A" & ræk) End If Next række End With
Me.kontakt.DropDown End Sub Private Sub lukAdresseFilen() adrXLS.Application.Quit Set adrXLS = Nothing End Sub
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.