Avatar billede jorgenjo Nybegynder
20. januar 2016 - 18:20 Der er 5 kommentarer og
1 løsning

Slette en hel række (samme række) i flere arkfaner

Jeg har et regneark med flere ens ark, hvor en makro kan indsætte en rækker i flere ark. Jeg vil også gerne have en makro, som sletter en række i alle ark. Hvis jeg f.eks. har markøren i B11 i første ark skal makroen slette række 11 i alle ark eller hvis jeg står i b17 skal den slette række 17 i alle ark. Efter sletning skal vendes tilbage til celle B4 i første ark.
Avatar billede nemlig Professor
20. januar 2016 - 18:29 #1
Et lille hint.

Hvis du har ens ark, så kan du markere flere ark på ark-fanerne nederst.
Hold Ctrl nede, men du klikker på arkene eller Shift for at vælge alle mellem først valgte ark og næste.

Du kan se, at fanerne bliver markeret.

Det du gør på det aktive ark, sker også på alle de andre markerede.
Står du fx i række 11 og sletter rækken, så slettes rækkes også på alle de andre markerede ark.
Avatar billede jorgenjo Nybegynder
20. januar 2016 - 18:39 #2
Ja, det er det som jeg gerne vil ind i en makro, da brugerne f.eks ikke altid husker at holde Ctrl nede
Avatar billede kim1a Ekspert
20. januar 2016 - 18:57 #3
En bruger herinde lavede en makro til mig, som gjorde nogenlunde det du siger:
http://kronsell.net/Smaamakroer.htm#INDSRK
Avatar billede jens48 Ekspert
20. januar 2016 - 22:14 #4
F. eks. denne makro:

Sub DeleteRows()
Dim Ws As Worksheet
x = ActiveCell.Row
For Each Ws In ActiveWorkbook.Worksheets
Ws.Rows(x).EntireRow.Delete
Next Ws
Sheets("Sheet1").Range("B4").Select
End Sub
Avatar billede jorgenjo Nybegynder
22. januar 2016 - 08:32 #5
Tak for hjælpen Jens48 - Sendt et "svar". Jeg har brugt dit forslag i et beskyttet ark, hvor brugerne har mulighed for at indsætte og slette bestemte rækker. Den endelige ser således ud:

Sub DeleteRows()

'Fjern beskyttelse fra alle ark
Dim s As Worksheet
For Each s In ActiveWorkbook.Sheets
s.Unprotect "Password"
Next s

Dim Ws As Worksheet
x = ActiveCell.Row
For Each Ws In ActiveWorkbook.Worksheets
Ws.Rows(x).EntireRow.Delete
Next Ws
Sheets(1).Range("c10").Select 'her har jeg lavet en lille rettelse

'Beskytter alle ark
For Each s In ActiveWorkbook.Sheets
s.Protect "Password"
Next s

End Sub
Avatar billede jens48 Ekspert
22. januar 2016 - 08:54 #6
Et svar
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

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