Avatar billede Henrik_Sommer Nybegynder
08. februar 2011 - 11:34 Der er 5 kommentarer og
1 løsning

Slette/indsætte nogle rækker med VBA

Hej

Jeg har et regne ark hvor jeg gerne vil kunne indsætte og slette noget af en linje. Har fundet følgende VBA programering på eksperten.dk som fint løser det problem


Sub CopytoNextRow()
Dim nyRække As Long, CC As Object
    nyRække = ActiveCell.Row + 1
   
With Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 25))
    .Copy
    .Insert Shift:=xlDown
    Application.CutCopyMode = False
   
    For Each CC In Range("A" & nyRække & ":Y" & nyRække).Cells
        If CC.HasFormula = False Then
            CC.Value = ""
        End If
    Next
   
End With

End Sub

Jeg har så selv lavet ud fra overstående en VBA som kan slette en given linje

Sub Sletrække()
Dim Sletrække As Long, CC As Object
    Sletrække = ActiveCell.Row
   
With Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 25))
    .Delete
End With
End Sub

Og nu til mit problem, på ark 2 bruger jeg noget information fra ark 1, når jeg ændre sletter eller indsætter kommer jeg til at mangle informationerne fra ark 1, det er lige som om at hvis jeg indsætter på linje 14, så kommer det der er skrevet ikke med om på ark2, ligeledes hvis jeg sletter, så mangler den reference på ark 2, nogle gode ideer til hvordan jeg løser dette?

min linje på ark 2 ser således ud:
=HVIS('Ark1'!R14="X";'Ark1'!$L14;"")

PFT
Henrik
Avatar billede store-morten Ekspert
08. februar 2011 - 19:58 #1
min linje på ark 2 ser således ud:
=HVIS('Ark1'!R14="X";'Ark1'!$L14;"")

En formel? Eller flere?
Skal:
=HVIS('Ark1'!R14="X";'Ark1'!$L14;"") forbive sådan?
Altså låst til række 14 ved sletning af række 10 på Ark1
Eller blive til:
=HVIS('Ark1'!R13="X";'Ark1'!$L13;"")
Avatar billede Henrik_Sommer Nybegynder
08. februar 2011 - 20:21 #2
Formlen skal være låst til linjen.
hvis jeg indsætter en linje på ark1, "skal" den også indsættes på ark2 og omvendt.

Det er sådan at fra linje 11 og ned, kan jeg indtaste i ark 1, også indsætte og slette, og i ark2 laver jeg nogle udregninger ud fra de indtastninger der er på ark1

Giver det mening?
Avatar billede store-morten Ekspert
08. februar 2011 - 20:26 #3
Ikke helt, men prøv lige denne formel.
=HVIS(INDEKS(Ark1!R:R;14)="X";INDEKS(Ark1!L:L;14);"")
Har den ulempe at formlen kun kan fyldes ud vandret.
Avatar billede Henrik_Sommer Nybegynder
08. februar 2011 - 21:03 #4
Kan bruges, har erstattet tallte 14 med et cellenavn på samme ark som bare er noget længere ude til højre hvor jeg skriver tallet, dette kan jeg kopiere ned og få formlen til at virke.

så det har løst mit problem.
Takker
Avatar billede store-morten Ekspert
08. februar 2011 - 21:13 #5
Velbekomme.

Og velkommen på Eksperten

Så lægger jeg et 'Svar'
Som der står: Svar (til løsninger og pointgivning)
se:
Hvordan accepterer eller afviser jeg et svar?
http://www.eksperten.dk/faq#faq-3-1
Avatar billede Henrik_Sommer Nybegynder
09. februar 2011 - 07:46 #6
Ja, det må jeg jo lige lære, når jev svare eller kommentere på spørgsmålet :-)

Men tak igen :-)
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