Avatar billede Slettet bruger
04. april 2008 - 06:12 Der er 17 kommentarer og
2 løsninger

Skjule de tomme rækker i et loop

Jeg skal skjule de tomme rækker i et loop, der tester rækkerne og viser de udfyldte og skjuler de tomme, hver gang makroen kører, altså før sorteringen finder sted.

Hvordan gør jeg dette.

HASTER skal afleveres kl. 8:00
Avatar billede lehmannfarm Nybegynder
04. april 2008 - 07:21 #1
Prøv med:

Sub SkjulTomme()
Application.ScreenUpdating = False
Dim a As Long  'skjul tomme rækker
    For a = 1 To 101
    If Cells(a, 1).Value = "" Or Cells(a, 1).Value = "0" Then
        Cells(a, 1).Select
        ActiveCell.EntireRow.Hidden = True
      End If
    Next a
End Sub

du må selv ændre i hvilken kolonne den skal afgøre om linien er tom. Kan også kombineres så den selv checker videre på næste kolonne, så sender du den bare videre i et 'under'loop på samme måde. min kan kun tage 100 linier ad gangen, men du kan jo selv gå videre med underloop igen til de næste 100.
Avatar billede Slettet bruger
04. april 2008 - 07:58 #2
Hej igen, det virker super, hvordna får jeg den til at medtage celler, hvor der tilgår tekst, som tidligere har været tommer, kommer de ikke automatisk med, når de ikke er tomme mere?

Jeg ville jo egentligt gerne have det lavet, så de kolonner, hvor der er tekst, også bliver sorteret, således at de tomme felter i kolonnen kommer nederst. Det sker pt. kun med tal, ikke bogstaver?
Avatar billede Slettet bruger
04. april 2008 - 08:00 #3
I henhold til den kode der skjuler de tomme felter, der skal jeg blot bruge en, der opdaterer arket, så den igen indlæser hvad der er tomti fanerne  og så skjuler dem der er tomme.
Avatar billede lehmannfarm Nybegynder
04. april 2008 - 08:21 #4
Sub visTomme()
Application.ScreenUpdating = False
Dim a As Long  'skjul tomme rækker
    For a = 1 To 101
    If Cells(a, 1).Value = "" Or Cells(a, 1).Value = "0" Then
        Cells(a, 1).Select
        ActiveCell.EntireRow.Hidden = False
      End If
    Next a
End Sub

Prøv lige om det er så simpelt som dette ;-) dette er jo et kriterie for at der kan medgå nyt indhold i de tomme linier..
Avatar billede Slettet bruger
04. april 2008 - 09:31 #5
Det virker super:


Jeg ville jo egentligt gerne have det lavet, så de kolonner, hvor der er tekst, også bliver sorteret, således at de tomme felter i kolonnen kommer nederst. Det sker pt. kun med tal, ikke bogstaver?
Avatar billede lehmannfarm Nybegynder
04. april 2008 - 10:17 #6
Hvilke data (tal/tekst) har du i hvilke kolonner?
Avatar billede Slettet bruger
04. april 2008 - 12:12 #7
Send lige din mail, så kan jeg sende mit ark?
Avatar billede lehmannfarm Nybegynder
05. april 2008 - 05:57 #8
tl@davir.dk - så skal jeg kigge på den. jeg er på messe idag men hvis du sender inden 8 bliver det måske før jeg tager afsted ;-)
Avatar billede Slettet bruger
11. april 2008 - 16:49 #9
Hej, jeg har virkeligt brug for hjælp nu!

Kan vi arrangere et møde på MSN, hvor du kan hjælpe mig lidt, det er bare nogle småting- men de er super vigtige!
Avatar billede excelent Ekspert
11. april 2008 - 20:52 #10
Hvis du ikke har fået hjælp, kan du sende en mail med dit ark
eller en beskrivelse af hvad problemet er
pm@madsen.tdcadsl.dk
Avatar billede Slettet bruger
14. april 2008 - 08:05 #11
Hej excelent, jeg har sendt filen til din mail!
Avatar billede Slettet bruger
14. april 2008 - 08:12 #12
Den bliver ved med at skrive, at der er fejl i nedenstående:

Sub SkjulTomme()
Application.ScreenUpdating = False
Dim a As Long  'skjul tomme rækker
    For a = 11 To 4000
    If Cells(a, 1).Value = "" Or Cells(a, 1).Value = "0" Then
        Cells(a, 1).Select
        ActiveCell.EntireRow.Hidden = True
      End If
    Next a
End Sub
Avatar billede Slettet bruger
14. april 2008 - 08:22 #13
Jeg forstår d simpelthen ikke, når jeg er i excel, viser den en fin oversigt over hvilke informationer der kommer med på udskrift side 1-x.... når når jeg klikker visudskridt bliver indholdet i de øverste 30 celler ens!?!
Avatar billede excelent Ekspert
20. april 2008 - 09:41 #14
har du ikke fået en mail ?
Avatar billede Slettet bruger
20. april 2008 - 10:08 #15
Nej, gider du ikke skrive til mig på msn: juhl@makalay.dk jeg har et spg. til dig!
Avatar billede excelent Ekspert
20. april 2008 - 20:09 #16
Løsning blev:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, Range("J11:J6000")) Is Nothing Then Exit Sub
If Target.Value = "X" Or Target.Value = "x" Then
Range("A" & Target.Row & ":J" & Target.Row).Interior.ColorIndex = 15
Else
Range("A" & Target.Row & ":J" & Target.Row).Interior.ColorIndex = xlNone
End If
End Sub
Sub CopyToHovedArk()
Application.ScreenUpdating = False
Set sh1 = Sheets("Niveau")
sh1.Range("A11:J2500") = ""
For Each Sh In ThisWorkbook.Sheets
If Sh.Name <> "Niveau" Then Sh.Select
For t = 27 To Sh.Cells(1000, 1).End(xlUp).Row
rk = sh1.Cells(5000, 1).End(xlUp).Row + 1
sh1.Cells(rk, "A") = Sh.Cells(t, "A")
sh1.Cells(rk, "D") = Sh.Cells(t, "D")
sh1.Cells(rk, "E") = Sh.Cells(t, "E")
sh1.Cells(rk, "F") = Sh.Cells(t, "F")
sh1.Cells(rk, "G") = Sh.Cells(t, "G")
sh1.Cells(rk, "H") = Sh.Cells(t, "H")
sh1.Cells(rk, "I") = Sh.Cells(t, "I")
sh1.Cells(rk, "J") = Sh.Cells(t, "J")
Next
Next
sh1.Select
Application.ScreenUpdating = True
End Sub
Avatar billede Slettet bruger
20. april 2008 - 20:20 #17
Hej, mange tak for svaret. Gider du sende et svar. SÅ får du points!
Avatar billede excelent Ekspert
20. april 2008 - 20:57 #18
du har allerede givet point til lehmannfarm
Avatar billede Slettet bruger
20. april 2008 - 21:04 #19
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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