10. oktober 2004 - 19:40Der er
13 kommentarer og 1 løsning
Makro til kopiering af værdien af bestemte celler til anden fil
Hej
Jeg har fået meget givtige svar omkring Makroer og VBA. Så nu forsøger jeg igen.
Jeg har en skabelon til produktion af fakturaer. Der gemmes en fil (Excel-projektmappe) for hver faktura.
Jeg kunne godt tænke mig, at der fra hver enkelt faktura flyttes værdien af bestemte celler (kundenr, fakturanr, dato og beløb)til den næste ledige række i en bogføringsfil (én Excel-projektmappe). Denne flytning kunne ske ved aktivering af en knap.
Bogføringsfilen importeres ved faste intervaller til økonomisystemet.
Jeg vil nu mene, at du godt kan fra VBA (altså en macro)
I dit bogførings-fil aktivere du en macro, der åbner alle fakturaer en efter en, og indsætter hvad der nu skal indsætes i bogførings-filen.
Du skal så finde på en måde, så du ikke genindlæser alle filerne næste gang du trykekr på knappen. Med mindre du da gerne vil det.
Det smarte ville dog være, at du under produktionen af de enkelte fakturaer ( i din skabelon) sørger for, at de data der nu skal gemmes bliver gemt i bogføringsfilen.
Det lyder i øvrigt som om det her er noget for Access, frem for Excel.
Enig i at Access nok er det bedste software til denne løsning. De brugere, som jeg har, er ekstremt trygge ved Excel. Dette er en lille arbejdsgang i forhold til hvad Excel i øvrigt bliver brugt til. Derfor Excel.
Enig med M.Moth - at det er under produktionen af fakturaen, at der skal overføres data til bogføringsfilen.
Men kan man sikre, at man via en makro bruger den næste ledige række i denne bogføringsfil?
Enten får du excel til at finde den første ledige række i en bestemt kolonne (det er der en funktion der kan), eller også reservere du en celle hvor du hele tiden justere det aktuelle antal af aktuelle rækker - eller gemmer det i en text-fil, hvis du hellere vil det (eller i reg-databasen- mulighederne er mange)
Tak. Kanon, at det teknisk kan lade sig gøre. Jeg har dog det problem, at jeg ikke er stærk nok i VBA/makroer til at opbygge det. Havde håbet på lidt hjælp til dette (såfremt det kunne lade sig gøre).
Jeg har forsøgt forskellige makroer og kodninger. Håber at der er nogen, der kan hjælpe. Se følgende kode - som ikke virker. Det med at vælge næste ledige række fungere vist ikke, ligeledes heller ikke gem-funktionen:
Sub Gem() Sheets("Data").Select Range("A1:D1").Select Selection.Copy Workbooks.Open Filename:="C:\bogføring.xls" ActiveSheet.Paste Sheets("Bogføring").Select Rw = Range("A999").End(xlUp).Row + 1 Range("A" & Rw).PasteColumns("A:D").EntireColumn.AutoFit ActiveWorkbook.Save ActiveWindow.Close Application.CutCopyMode = False Sheets("Nota").Select Range("B5").Select End Sub
Hvorfor ikke bruge de indbyggede funktioner ved skabeloner ? Her kan man få sine vigtige data overført til en database (excel eller access) når man gemmer den nye fil, hvis denne er baseret på en skabelon. Under funktioner / tilføjelsesprogrammer sæt fluen ved "Guiden skabelon med datasporing" I menuen Data er der nu et menupunkt der hedder "Guiden Skabelon". Følg den og opret skabelon, felter og database som det passer til dig.
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.