Avatar billede Anna Praktikant
02. marts 2020 - 12:34 Der er 7 kommentarer

Kode tilknyttet knap, som indsætter række under knappens placering

Hej med jer

Vil nogen hjælpe mig :)
Jeg søger en løsning til følgende:

Jeg har knyttet en macro til en knap i mit ark. Denne makro indsætter en række der hvor en celle er markeret. Jeg vil gerne have den til at indsætte en række i rækken under den række hvor knappen er placeret. Således af brugerne af arket kan klikke på knappen for hver måned og få en ny række ind. Koden jeg arbejder på er denne:

Sub TilføjRækkeHer()
On Error GoTo Slut
home = ActiveCell.Address
homeArk = ActiveSheet.Name

Application.ScreenUpdating = False

        Rows(ActiveCell.Row).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromAbove
        Rows(ActiveCell.Row).Offset(1, 0).Copy
        Rows(ActiveCell.Row).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
        Application.CutCopyMode = False
       
Sheets(homeArk).Select
Range(home).Select

GoTo Slut
Slut:
Application.ScreenUpdating = True
End Sub

Mange venlige hilsner
Anna
Avatar billede Juul Forsker
02. marts 2020 - 13:10 #1
Er alle knapper ikke baseret på lokationer, og ikke celler? For så tror jeg måske ikke det er muligt at finde ud af hvor i arket den er lokaliseret..
Avatar billede Anna Praktikant
02. marts 2020 - 13:46 #2
Pas. Men det må da kunne lade sig gøre?? Række nummeret hvor cellen er placeret ændre sig hver gang der indsættes nye rækker, så jeg kan ikke anvende en fast celle. Kan man låse en knap til tekst, så kan det måske kobles til at der altid skal en ny række under januar-rækken ?
Avatar billede Mads32 Ekspert
02. marts 2020 - 14:35 #3
Hej
Jeg er ikke fortrolig med makro strukturer men,
kan du ikke ændre adressen som du vil kopiere til ved at ændre
Rows(ActiveCell.Row).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone,

Til
Rows(ActiveCell.Row+1).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone,

m v h mads32
Avatar billede Anna Praktikant
03. marts 2020 - 08:37 #4
No, det virker desværre ikke, da den stadig referere til den aktive celle
Avatar billede Jan K Ekspert
03. marts 2020 - 09:04 #5
Prøv med denne

    Worksheets(1).Shapes(Application.Caller).TopLeftCell.EntireRow.Select
    Selection.Offset(1, 0).INSERT Shift:=xlUp, CopyOrigin:=xlFormatFromLeftOrAbove

Den første linje undersøger, hvor knappen står og vælger hele denne række. Den næste indsætter så en række under denne.
Avatar billede Anna Praktikant
03. marts 2020 - 09:50 #6
Hej Jan
Jeg er endnu ikke den meste vba kyndige. Så er det muligt du kan hjælpe mig med hvad der skal stå før og efter også?
Anna
Avatar billede Jan K Ekspert
03. marts 2020 - 11:38 #7
Så må du lige forklare, præcis hvad det er knappen skal gøre, udover at indsætte en række.
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