Ik heb het vermoeden dat de "lege cellen" waar je het over hebt niet echt
leeg zijn. Waarschijnlijk staat er een spatie of een quootje (') in die
cellen die bovenaan terecht komen bij het sorteren. Je kunt dit probleem op
twee manieren oplossen:
De "lege cellen" echt leeg maken of
de lijst aflopend sorteren in plaats van oplopend.
Met vriendelijke groet,
Marcel Kreijne
Quandan - Steunpunt voor spreadsheetgebruikers
www.quandan.nl
"jose" <anon...@discussions.microsoft.com> schreef in bericht
news:05f901c4f0b2$97abf350$a501...@phx.gbl...
Sorteer op de betreffende kolom.
De z.g. lege cellen komen nu bovenaan.
Selecteer deze cellen en druk op de knop Delete van je toetsenbord.
Sorteer de kolom opnieuw en je zult zien dat de nu echt lege cellen niet
meer bovenaan komen.
Jan
Spaties zijn eenvoudig te verwijderen door in de menubalk te kiezen voor
Bewerken / Vervangen
Zoeken naar (spatie invullen)
Vervangen door (leeg laten)
en Identieke celinhoud aanvinken.
Klik op Alles Vervangen.
Als er ' in staan wordt het wat lastiger... laat het in dat geval nog even
weten.
groetjes,
Marcel
"Jose" <anon...@discussions.microsoft.com> schreef in bericht
news:0b4e01c4f0fd$26364720$a301...@phx.gbl...
"Quandan - Marcel Kreijne" <marcel...@quandan.nl> schreef in bericht
news:...
>-----Oorspronkelijk bericht-----
>.
>
Waardoor worden deze cellen gevuld?
Is dat door plakken vanuit een ander bestand, eventueel via een macro?
Staan er formules in de cellen?
De cellen die wel waardes bevatten, is de inhoud tekst of staan er getallen
in. In het laatste geval is er nog wel een snelle methode om iets te doen.
Kun je overweg met VBA, dan is er ook wel wat te doen.
Jan
>-----Oorspronkelijk bericht-----
>.
>
Met onderstaande code, geplakt in een algemene module, kun je de cellen met
een lege string (""), echt leegmaken:
Sub LeegIsLeeg()
Dim rng As Range
For Each rng In ActiveSheet.UsedRange
If Not rng.HasFormula Then
If Len(rng) = 0 Then
rng = Null
End If
End If
Next
End Sub
Deze code doorzoekt het hele in gebruikzijnde gebied. Dat zou je eventueel
kunnen beperken tot het doorzoeken van een geselecteerd gebied.
Een andere methode zou de volgende kunnen zijn.
Hier vervang je de opdracht Plakken Speciaal> Waarden door onderstaande
code.
Daarin wordt na het plakken, het geplakte gebied doorzocht op tekst met
lengte 0. Deze wordt vervangen door "qqqq"
Vervolgens wordt deze weer vervangen door een lege waarde, die nu echt leeg
is.
Sub PlakkenSpeciaalENLeeg()
If Application.CutCopyMode = xlCopy Then
Selection.PasteSpecial Paste:=xlPasteValues
Selection.Replace What:="", Replacement:="qqqq", LookAt:=xlWhole, _
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Selection.Replace What:="qqqq", Replacement:="", LookAt:=xlWhole, _
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End If
End Sub
Jan