Rivin piilotus makrolla?

15+19

Oisko jollai vinkkiä miten lähteä toteuttamaan...

Esim. on alue B2:B55, ja makro piilottaisi/poistaisi ne rivit jotka on tyhjiä?

16

925

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 15+19

      Keksisinkin jo itse, mutta onko paras ratkaisu?

      Range("B2:B55").Select
      Selection.SpecialCells(xlCellTypeBlanks).Select
      Selection.Delete Shift:=xlUp

      • oikea ratkaisu...
        tossa nauhoittimen makro siistittynä

        Range("B2:B55").SpecialCells(xlCellTypeBlanks).Delete


        Keep Excel
        @Kunde


    • pohdiskelua1

      Eikö pikasuodatus käy, sillä saa tyhjät piiloon
      ja Poista kaksoiskappaleet, sillä saa tyhjät pois

    • pohdiskelua1

      Jos taulukossa jossain on yksittäisiä tyhjiä soluja, esittämänne makro poistaa nuo tyhjät solut ja samalla sotkee tietorivit. Testasin asian.
      Makro toimii tarkoituksenmukaisesti vain jos koko rivi on kokonaan tyhjä.

      Aika iso riski mielestäni

      • Tyhjät piiloon

        Sub Piilota()
        For Each solu In Range("B2:B55")
        If solu = "" Then Rows(solu.Row).RowHeight = 0
        Next solu
        End Sub

        Sub Näytä()
        Rows("2:55").EntireRow.AutoFit
        End Sub


    • 15+19

      Piru toi ei osaakkaa valita niit soluja mis kaava antaa "" arvon solulle.

      • For i = Range("B2:B55").Cells.Count To 1 Step -1
        If Len(Range("B2:B55").Cells(i)) = 0 Then Range("B2:B55").Cells(i).EntireRow.Delete
        Next i

        Keep EXCELing
        @Kunde


    • lijij

      Toi, siis makroko?

    • 6+3

      Kiitos kunde, ot sä kyl proo

    • 19+19

      Osaatkos Kunde sanoa mikä Excelin ominaisuus kun käytän tuota rivien piilotus makroa mutta se siirtää sen alla olevat kaaviot alemmas?

      Jos käyn siinä välilehdessä johon se tekee sen piilotuksen niin silloin se ei siirrä niitä kaavioita.

    • ei mennyt jakeluun...
      eli jos suoritat makron esim. taul1 ollessa aktiivinen ja jossa kaavio niin
      1. kaavio siirtyy
      2. kaavio ei siirry
      jos esim. taul 2 aktiivisena ja suoritat makron ja aktivoit sitten taulukon niin
      3. kaavio siirtyy
      4. kaavio ei siirry
      mikä noista toteutuu?

      Leep EXCeling
      @Kunde

    • 4+1

      Selitän alusta, eli mulla on välilehti jossa on alussa kaikenlaista tekstiä, sitten on taulukko jossa suoritan yllä olevan makron ja sen alapuolella on kaavioita, mutta kun suoritan makron ilman että käyn itse kyseisellä välilehdellä niin makro siirtää alla olevat kaaviot alespäin.

      Eli mulla on taul1 esillä jossa on nappi joka suorittaa makron, eli poistaa kyseiset rivit taul2 jossa myös kaaviot niin silloin siirtyy kaaviot mutta kun käyn taul2 ja menen takaisin taul1 ja painan nappia (suoritan makron) niin kaaviot ei siirry.

      Outoa

    • voitko liittää sen poistokoodin tänne?

    • 13+4

      Application.Run "suojaus_auki"
      Application.ScreenUpdating = False

      Sheets("STEP4").Select

      Range("A9").Select

      For d = Range("A39:A237").Cells.Count To 1 Step -1
      If Len(Range("A39:A237").Cells(d)) = 0 Then Range("A39:A237").Cells(d).EntireRow.Delete
      Next d

      Sheets("Kaaviot").Select

      Range("A2:B205").Select
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Add Key:=Range("B2"), _
      SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
      xlSortTextAsNumbers
      With ActiveWorkbook.Worksheets("Kaaviot").Sort
      .SetRange Range("A3:B205")
      .Header = xlNo
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With
      Range("A208:B411").Select
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Add Key:=Range("B208"), _
      SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
      xlSortTextAsNumbers
      With ActiveWorkbook.Worksheets("Kaaviot").Sort
      .SetRange Range("A209:B411")
      .Header = xlNo
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With
      Range("A415:B618").Select
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Kaaviot").Sort.SortFields.Add Key:=Range("B415"), _
      SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
      xlSortTextAsNumbers
      With ActiveWorkbook.Worksheets("Kaaviot").Sort
      .SetRange Range("A416:B618")
      .Header = xlNo
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With

      For c = Range("B417:B618").Cells.Count To 1 Step -1
      If Len(Range("B417:B618").Cells(c)) = 0 Then Range("B417:B618").Cells(c).EntireRow.Delete
      Next c

      For b = Range("B210:B411").Cells.Count To 1 Step -1
      If Len(Range("B210:B411").Cells(b)) = 0 Then Range("B210:B411").Cells(b).EntireRow.Delete
      Next b

      For a = Range("B4:B205").Cells.Count To 1 Step -1
      If Len(Range("B4:B205").Cells(a)) = 0 Then Range("B4:B205").Cells(a).EntireRow.Delete
      Next a

      Sheets("Laskenta").Select

      Application.ScreenUpdating = False
      Application.Run "suojaus_kiinni"

    • Unohda toi äsköinen, siis siinä taulussa jossa kaaviot siirtyy niin tekee tämän makron

      Sheets("STEP4").Select

      Range("A9").Select

      For d = Range("A39:A237").Cells.Count To 1 Step -1
      If Len(Range("A39:A237").Cells(d)) = 0 Then Range("A39:A237").Cells(d).EntireRow.Delete
      Next d

      • en kyllä nyt keksi mitään syytä miksi makro toimii eritavoin eripaikasta...
        koodin lopussa sulla on
        Application.ScreenUpdating = False
        ehkäpä se pitäisi olla
        Application.ScreenUpdating = True
        mutta ei se auta tohon siirtymiseen mun mielestä.Seuraava ohje ainaskin estää taulukon liikkumisen...

        klikkaa kaaviota hiren oikealla ja avautuvasta valikosta klikkaa sitä alinta muotoile kaavio aluetta.
        Sitten avautuvasta valikosta klikkaat vasemmalta ominaisuudet ja edelleen aukeavasta valitse ylhäältä objektin apaikan vaihtoehdoista se alin eli älä siirrä ja muuta kokoa solujen mukaan.
        En tiedä mten noi on kirjoitettu suomiversiossa, mutta jotain sinne päin kuiteskin...
        .
        taai lisää koodiin...

        ActiveSheet.ChartObjects("KAAVION NIMI").Placement = xlFreeFloating

        Auttoiko?

        Keep EXCELing
        @Kunde


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. 4 tuntia töitä kerran viikossa on naisen mukaan liian raskasta

      Tämä ei taija olls lieksalaine vaikka "tuntomerkkiin" perusteella nii vois eppäillä! 🤣 31-vuotias Maya ei kykene tekemä
      Lieksa
      75
      3434
    2. Riikka Purra rosvosi eläkeläiset!

      1900 euron eläkkeestä rosvottiin 350 euroa. Kohtuullista vai? Perussuomalaisia ei enää ole olemassa meille eläkeläisille
      Maailman menoa
      563
      3229
    3. Baaritappelu

      Hurjaksi käynyt meno Laffassa. Jotain jätkää kuristettu ja joutunu teholle...
      Kokkola
      41
      2892
    4. Näytit nainen sanoinkuvaamattoman ihanalta

      En voi unohtaa sinua. Pohdin nyt sinua.
      Ikävä
      49
      2082
    5. SDP:n kannatus edelleen kovassa nousussa, ps ja kokoomus putoavat

      SDP on noussut Helsingin Sanomien tuoreessa kannatuskyselyssä kokoomuksen ohi Suomen suosituimmaksi puolueeksi. SDP:n ka
      Maailman menoa
      315
      1876
    6. Ihastuksesi persoonalliset piirteet ulkonäössä?

      Onko jotain massasta poikkeavaa? Uskallatko paljastaa? Aloitan; todella kauniit kädet ja sirot sormet miehellä.
      Tunteet
      120
      1865
    7. Tappo Kokkolassa

      Päivitetty tänään Iltalehti 17.04.2024 Klo: 15:23..Mikähän tämä tapaus nyt sitten taas on.? Henkirikos Kokkolassa on tap
      Kokkola
      12
      1855
    8. Kansaneläkkeiden maksu ulkomaille loppuu

      Hyvä homma! Yli 30 miljoonan säästö siitäkin. Toxia.
      Maailman menoa
      141
      1477
    9. Ketä ammuttu ?

      Ketä sielä Juupajoela ammuttu ei kait mainemies alkanu amuskelemaan , , Kyösti H ?
      Juupajoki
      26
      1281
    10. Nainen, meistä tulisi maailman ihanin pari

      Mutta tosiasiat tosiasioina, on liian monta asiaa, jotka sotivat meidän yhteistä taivalta vastaan. Surulla tämän sanon,
      Ikävä
      65
      1270
    Aihe