Oprettet ons. d. 04. juni 2003 kl. 14:27:42

claus_luchow
claus_luchow (24.645 point. Point ude: 0)


Makro. Slet tomme rækker

Hej kloge Excel-hoveder

Hvis det er muligt, hvordan skal makroen (i Excel 2000 DK) se ud ved følgende:

· Gennemgå hele projektmappen
· Hvis der er rækker (vilkårligt fra gang til gang), som er tomme, skal rækken slettes og data flyttes op.

Venlig hilsen

Claus Lüchow

Skrevet ons. d. 04. juni 2003 kl. 14:42:42| #1

janvogt
janvogt (60.313 point)
Du kan prøve denne:

Sub SletRækker()
'Alle rækker i første markerede kolonne der indeholder 0
'eller er tomme Slettes
Dim r As Range
Dim i As long
Set r = Selection.Columns(1)
For i = r.Rows.Count To 1 Step -1
If r.Cells(i).Value = 0 Then
r.Cells(i).EntireRow.Delete
End If
Next i
End Sub

Skrevet ons. d. 04. juni 2003 kl. 14:48:13| #2

overchord
overchord (41.637 point)
Det kommer lidt an paa: vil du loebe alle taenkelige raekker igennem i arket (alle ~ 65000) og slette blanke? Jeg antager i eksemplet at du loeber igennem den foerste 1000 raekker i hvert ark:

x = sheets.count 'Taeller antal ark i projektet

for i = 1 to x
sheets(i).select

for z = 1 to 1000 'antallet af raekker
if range("A" & z) <> "" then 'Antager at du altid har noget skrevet i kolonne A for de raekker der ikke er tomme
else
range("A" & z).EntireRow.Delete xlUp
z = z-1 'Da der kan vaere to tomme raekker i traek
end if
next z
next i

Skrevet ons. d. 04. juni 2003 kl. 14:55:15| #3

janvogt
janvogt (60.313 point)
Mit eksempel løber kun de rækker igennem du har markeret.

Skrevet ons. d. 04. juni 2003 kl. 15:31:04| #4

bak
bak (102.355 point)
Her slettes alle tomme linier i alle ark i projektmappen
de slettes kun hvis hele rækken er tom


Sub sletlinier()
Dim slut As Long
Dim ws As Worksheet
Dim x As Long
Dim rng1 As Range



For Each ws In ActiveWorkbook.Worksheets
slut = ws.UsedRange.Rows.Count
For x = slut To 1 Step -1
    Set rng1 = ws.Rows(x).EntireRow
    If Application.WorksheetFunction.CountA(rng1) < 1 Then ws.Rows(x).Delete
Next
Next
End Sub

Skrevet ons. d. 04. juni 2003 kl. 15:58:13| #5

claus_luchow
claus_luchow (24.645 point)
Tak til jer alle 3 for gode bud på løsninger. Dog mener jeg, at kun Bak giver det korrekte svar, og bør tildeles point herfor. Ret mig gerne, hvis jeg tager fejl.

For de løsninger som Janvogt og Overchord kommer med gælder det, at makroen sletter alle rækker som i kolonne A ikke har noget indhold.
Dette er ikke aktuelt for opgaven, da sletningen ikke må være kolonnebetinget.

Ligeledes gælder det også for de 2 løsninger, at makroerne tilsyneladende kører uendeligt (også selvom der kun er markeret X-rækker), og dermed ikke returnerer et gyldigt resultat.

Hvis Bak kaster et svar ind, giver jeg point til dette.
Jeg vil dog også gerne honorere Janvogt og Overchord, i det tilfælde at jeg tager fejl i min vurdering af løsningsforslagene.

Venlig hilsen Claus Lüchow

NB Videre opfølgning fra min side, sker nu efter Pinse :-)

Skrevet ons. d. 04. juni 2003 kl. 16:07:51| #6

bak
bak (102.355 point)
ok, her er så svaret :-)

Skrevet ons. d. 04. juni 2003 kl. 16:10:13| #7

bak
bak (102.355 point)
nå, nu igen ......

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   



Seneste spørgsmål

Problem med kombination af Vlookup og Indirect

Oprettet den 27. august 2015 kl. 15.19
Torben1970 giver 100 point for svar | Giv et svar »

Beskyt ark med fungerende tabel

Oprettet den 27. august 2015 kl. 14.13
Silencia giver 30 point for svar | Giv et svar »

Beregne hældning uden skæring med (0,0)

Oprettet den 27. august 2015 kl. 12.58
southfarm giver 60 point for svar | Giv et svar »

Seneste guides

Fjern reklamer i Edge - Windows 10
Download/import af tabeller - IE
Manual til casio ur





Computerworld

Teaser billede

YouSee tvunget til at splitte bredbånd og tv op: Nu kan du droppe tv-pakken

YouSee vil fremover levere bredbånd uden at kræve, at kunderne samtidig køber en tv-pakke. Det er dog mest af alt et tiltag, der kommer, fordi TDC er tvunget til det.

CIO

Teaser billede

Tre ting du skal lære af sikkerhedsproblemerne hos Tesla, Chrysler og Volkswagen

Tesla, Chrysler og Volkswagen er alle ramt af sårbarheder, men selskaberne reagerer vidt forskelligt. Vi har samlet tre regler, som de burde have fulgt - og som kan hjælpe din virksomhed med at...

Comon

Teaser billede

Stortest af 17 grafikkort: Spilgrafik til ethvert budget

Hvordan vælger man det rigtige grafikkort til den rigtige pris? Denne stortest kan give dig svaret.

Channelworld

Teaser billede

HP splittes op i to danske selskaber: Her er de to nye topchefer i Danmark

HP har sat navne på, hvem der fra 1. november kommer til at stå i spidsen for de to nye danske HP-selskaber, som opstår, når hardwarekoncernen splittes i to.

White paper

Teaser billede

Hvorfor ikke lade netværket hjælpe med sikkerheden?

Antallet af trusler mod virksomhedens dataintegritet mangedobles i takt med, at vi tager flere og flere enhedstyper og cloudservices i brug. Research og journalistisk bearbejdning af...



Udgiver · © 2015 Computerworld A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger