21. september 2018 - 11:41Der er
7 kommentarer og 2 løsninger
Udskifte data i et datahoved ark (ark2) fra flere ark (Ark4-6)
Hej,
Jeg har et ark1(overbliksbilled) hvor jeg gerne vil have 3 knapper/macroér (valg af datasæt 1, valg af datasæt2 og valg af datasæt 3, evt osv. og jeg kan godt selv lave billederne/kald af macroér)
ved tryk af knap 1 skal alle data i ark 4 overtage/overskrive alle data i ark 2 ved tryk af knap 2 skal alle data i ark 5 overtage/overskrive alle data i ark 2 ved tryk af knap 3 skal alle data i ark 6 overtage/overskrive alle data i ark 2 (evt. flere senere)
Har lige prøvet med en lille tilpasning, og den ser ud til at være det jeg var på "jagt" efter.... Forsøger at lægge den ind i mit rigtige ark, og tester så lige den der også. Vender tilbage med svar.
Virker fint med tilpasning... Har forsøgt at ændre den til at udskifte i et andet ark, uden held. (forsøgt nyt modul og tilpasset den der er)
Hvis jeg gerne vil have samme knap til at gøre 2 ting, hvordan fixer jeg lige den? button1 Copysheet ("Ark2") plus Copysheet ("Ark6") og Button2 Copysheet ("Ark3") og Copysheet ("Ark7") osv.
pt. lavet et HovedArk hvor knapper er (4 stk)
Option Explicit Dim ws As Worksheet, wsCopySheet As Worksheet Dim rArea As Range, rLastcell As Range
Sub Button1() Copysheet ("Ark2") End Sub Sub Button2() Copysheet ("Ark3") End Sub Sub Button3() Copysheet ("Ark4") End Sub
hej som jeg nu har beskrevet hvad makroen gør, vil du aldrig kunne kopiere 2 ark til hovedarket, hvis så skal den ændres en hel del.
Option Explicit Dim ws As Worksheet, wsCopySheet As Worksheet Dim rArea As Range, rLastcell As Range
Sub Button1() Copysheet ("Ark2") End Sub Sub Button2() Copysheet ("Ark3") End Sub
Private Sub Copysheet(sh As String) Set ws = Sheets("Ark1") ' bestemmer arket der skal kopieres til Set wsCopySheet = Sheets(sh) ' sætter arket der skal kopieres fra ' finder sidste celle med indhold Set rLastcell = Range(wsCopySheet.Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Address) Set rArea = wsCopySheet.Range("A1", rLastcell.Address) ' sætter området der skla kopieres ws.Range("A:XX").ClearContents ' Renserarket der skal kopieres til ws.Range("A1", rLastcell.Address).Value = rArea.Value ' kopierer End Sub
Tænkte at det var muligt at lave det som flere macroér og så kalde dem fra 1 knap.
"Sub Button1_Click() Call copy Calculations 'Macro1 (den der copy Calculations2 til Calculations) Call copy Data 'Macro2 (en der copy Data2 til Data)
"Sub Button2_Click() Call copy Calculations2 'Macro3 (den der copy Calculations3 til Calculations) Call copy Data2 'Macro4 (en der copy Data3 til Data)
osv til 4 buttons
"de 4 buttons er på hovedArk"
Faneblade hedder(efter HovedArk): Data, Calculations, Data2, Data3, Data4, Data5, Calculations2, Calculations3, Calculations4 og Calculations5 1 button kalder 2 macroer (copy Data2 til Data og Calculations2 til Calculations. 2 button kalder 2 macroer (copy Data3 til Data og Calculations3 til Calculations 3 og 4 på samme måde.
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.