Avatar billede tville Juniormester
02. februar 2007 - 14:52 Der er 7 kommentarer og
1 løsning

Opslag i liste i andet regneark

I et regneark (en faktura) vil jeg gerne kunne indsætte navn og adresse på debitor ved at slå op i en liste, som jeg har i et andet regneark.

Er der nogen der har en god ide til hvordan man gør det?
Tvlle
02. februar 2007 - 15:21 #1
Princippet er følgende:
=LOPSLAG(E3;'C:\[Mappe2.xls]Ark1'!$A$1:$B$3;2)
02. februar 2007 - 15:27 #2
E3: Den celle du indtaster din debitorreference i.
'C:\[Mappe2.xls]Ark1'!$A$1:$B$3: Listen over debitorer. Hvis arket er i samme projektmappe kan 'C:\[Mappe2.xls] udelades.
2: Den kolonne i debitorlisten du vil hente oplysning i.
Avatar billede tville Juniormester
02. februar 2007 - 16:17 #3
Lopslag kender jeg, men jeg leder efter en løsning, hvor jeg kan se mine debitorer i en dropdown liste.
Man kan under data - validering - oprette en liste, men det kræver (efter hvad jeg kan finde ud af) at listen er i samme regneark. Jeg vil gerne have adresserne i et helt andet ark.
Avatar billede supertekst Ekspert
03. februar 2007 - 00:16 #4
Det kan godt lade sig gøre via VBA:

1) Hente data fra Debitor-filen og indsætte som liste i Faktura-fil - evt. på ark2 - herefter opbygge en valideringsliste på selve faktura-arket.
eller
2) Anvende en userform i faktura-filen, hvor kundedata indsættes i listeboks/comboboks. Kundedata hentes fra debitor-filen.
Avatar billede tville Juniormester
03. februar 2007 - 16:23 #5
Jeg tror jeg vælger en mere simpel løsning og går den modsatte vej. Vælger den ønskede debitor og kopierer navn og adresse over i faktura-filen.

Det kunne jeg selv finde ud af selv at lave, men det jeg har lavet ville jeg gerne have speedet lidt op. Princippet i min løsning er, at jeg står i adressefilen, den linie jeg står i kopierer jeg først navnet (kolonne A) fra går til fakturafilen og sætter det ind, går tilbage til adressefilen og kopierer adressen (kolonne B), går til fakturafilen og indsætter det osv indtil jeg har alle 4 felter med. Men disse hop mellem den ene og den anden fil vises jo når makroen kører. Jeg kunne i stedet forestille mig, at jeg undgik disse hop frem og tilbage. Den position jeg står på i adressenfilen må jeg kunne bruge til at bestemme et range, som jeg kopierer og sætter ind i faktura-filen. Men hvordan finder jeg positionen i adressen filen og anvender den som udgangspunkt??

Til orientering ser min nuværende kode således ud (og det fungerer):

            ActiveCell.Offset(0, 1).Select
            Selection.Copy
            Windows("faktura1").Activate
            Range("A9").Select
            ActiveSheet.Paste
            Windows("adresser.xls").Activate
            ActiveCell.Offset(0, 1).Select
   
            Selection.Copy
            Windows("faktura1").Activate
            Range("A10").Select
            ActiveSheet.Paste
            Windows("adresser.xls").Activate
            ActiveCell.Offset(0, 1).Select

Tville
Avatar billede supertekst Ekspert
03. februar 2007 - 17:13 #6
Så er løsningen vel - at via positionering i Debitor-filen - aktivering af en knap - og deb.data overføres til faktura-filen - ??
Avatar billede supertekst Ekspert
05. februar 2007 - 16:05 #7
Har en model - der ganske vist ikke følge dit ønske m/en simpel løsning - men  -synes jeg - er noget mere letbenet:

Når du åbner din faktura vises en userform med alle kunder (hentes via VBA i debitor-filen). Klik på den ønskede kunde - OK - Navn, adresse & postnr. by indsættes i faktura.

Send en mail til pb@supertekst-it.dk - hvis du er interesseret - så sender jeg en kopi af modellen - så kan du jo vurdere dette alternativ.
Avatar billede tville Juniormester
17. december 2014 - 14:52 #8
Ikke længere relevant
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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

IT-JOB