16. august 2006 - 13:22Der er
4 kommentarer og 1 løsning
Automatisk kopi af sheet/faneblad
Hejsa
Jeg har et regneark hvor hvert sheet indeholder en faktura nummereret.
Jeg kunne godt tænke mig to makroer: 1. En makro hvor stamoplysninger kopieres med i et nyt sheet. 2. En makro hvor der laves en blank kopi af det eksisterende sheet.
Fælles for begge makroer gælder at det nye sheet placeres som senest faktura (sidst i faneblads rækken) og automatisk tildeles fakturanummer.
Har lige rodet lidt med regnearket, kan man i et sheets højrekliksmenu automatisk kan lave en kopi og move to end. Hvilket løser det meste, dog ikke den automatiske optælling.
1. Hvilket omfang har stamoplysninger (range)? 1. Hvor skal de hentes fra - fra det sidste faktura? 2. Sidste faktura, hvor alle celler slettes (ex. fomler) - eller ? Er det kun selve fakturanr, der navngiver fanen?
Ikke det store omfang, - kun de oplysninger som står i det pågældende worksheet, kun ved blank kopi skal stamdatacellerne renses, men det kan evt. klares med et blankt sheet.
Derved kan det meste vel løses som nedenstående:
Sub CopyWorkSheetMoveToEnd() ' ' CopyWorkSheetToEnd Macro ' Macro recorded 16-08-2006 by toni ' Dim intSheets As Integer
I det nye worksheet skal feltet fakturanummer - eks. C9 opdateres ved ...C9 = intSheets - 1 for at tage højde for den blanke faktura til brug ved nyoprettelse 2. en blank kopi.
samt clearing af fakturadata ved kopi med stamoplysninger. Fanen navn giver kundenavn, eks Ole, og kopi bliver til Ole(2)...og det er vist fint nok, så kan man se hvor mange fakturaer der er sendt til hver enkelt kunde.
Måske kan du anvende dette: Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Cancel = True CopyWorkSheetMoveToEnd End Sub
Sub CopyWorkSheetMoveToEnd() Dim intSheets As Integer
intSheets = Sheets.Count Excel.ActiveSheet.Copy After:=Sheets(intSheets) ActiveSheet.Cells(9, 3) = intSheets - 1 End Sub
Tjaee, det virker jo umiddelbart, men der er lige lidt mere som jeg kigger på, fakturalinierne skal også løbes igennem og teksten(dropdown boks med værdier)ændres.
En ting jeg er usikker på er om koden vil virke hver gang, da ActiveSheet jo først er det sheet man kopiere, for i linien efter at være kopien.
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.