AutoFilter-toiminto ja merged cells

Apua kaivattais

Minulla on taulukko, johon on tuotu useita ns. tietokokonaisuuksia (esim 12 riviä tietoja joista joidenkin sarakkeiden solut on yhdistetty yhdeksi soluksi. Esim A1:A12 kattavassa solussa minulla lukee Eurooppa ja B1:B12 soluissa eri maiden nimiä (italia, ruotsi,ranska,saksa jne) C1:C12 ja D1:D12 vastaavien maiden tietoja. Haluaisin käyttää AutoFilter-toimintoa tietojen poimimiseen taulukosta. Mutta AutoFilter-toimintoa käytettäessä (esim. kun valitsen eurooppa) näyttää Excel vain yhdistetyn solun ensimmäisen rivin tiedot (vain italian tiedot), vaikka haluaisin nähdä kaikkien euroopan maiden tiedot.

Mikäli joku on törmännyt vastaavaan ongelmaan ja löytänyt ratkaisun, niin kaikki apu on tervetullutta!

5

569

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Autofilter

      sama kuin "Pikasuodatus". Jos ei, niin pikasuodatus toimii hyvin tuossa ongelmassa. Sarakkeissa pitää olla "Otsikkorivi". Klikkaa johonkin otsikkosarakkeeseen ja mene "Tiedot" > "Suodata" > "Pikasuodatus". Otsikkoriveille ilmestyy nuolipainikkeet. Paina tämän "Eurooppa"-sarakkeen nuolta ja valitse sieltä Eurooppa, Näkyville jää vain kaikki maat tietoineen jotka sijaitsevat Euroopassa. Ohje Excel 2000.

      • vielä tarkennusta...

        Kiitos vastauksesta! AutoFilter on siis sama toiminto kuin pikasuodatus. Olen yrittänyt tehdä kuten kuvasit viestissäsi. Mutta ongelma tulee siinä, että kun valitsen "eurooppa" niin Excel näyttää vain "euroopan" ensimmäisellä rivillä olevan maan tiedot. Eurooppa-solu on siis yhdistetty solu 12 solusta (A1:A12) ja 12 Euroopan maata ovat soluissa B1:B12. Esim kun valitsen "eurooppa" valikosta niin näen vain B1 solussa olevan maan tiedot, vaikka haluaisin nähdä kaikkien 12 euroopan maan tiedot. Tietenkin voisin kiertää ongelman pitämällä A1:A12 solut erillisinä ja kirjoittamalla A1:A12 soluihin eurooppa, jolloin ongelmaa ei syntyisi, mutta tällöin taulukon luettavuus kärsii pahasti.


      • vielä tarkennusta... kirjoitti:

        Kiitos vastauksesta! AutoFilter on siis sama toiminto kuin pikasuodatus. Olen yrittänyt tehdä kuten kuvasit viestissäsi. Mutta ongelma tulee siinä, että kun valitsen "eurooppa" niin Excel näyttää vain "euroopan" ensimmäisellä rivillä olevan maan tiedot. Eurooppa-solu on siis yhdistetty solu 12 solusta (A1:A12) ja 12 Euroopan maata ovat soluissa B1:B12. Esim kun valitsen "eurooppa" valikosta niin näen vain B1 solussa olevan maan tiedot, vaikka haluaisin nähdä kaikkien 12 euroopan maan tiedot. Tietenkin voisin kiertää ongelman pitämällä A1:A12 solut erillisinä ja kirjoittamalla A1:A12 soluihin eurooppa, jolloin ongelmaa ei syntyisi, mutta tällöin taulukon luettavuus kärsii pahasti.

        Koska solut on yhdistetty ei suodatus toimi, koska yhdistetyissä soluissa on tietoa vain sen vasemman yläkulman solussa, joten ainoa mahdollisuus on tehdä makro.
        Makrolla puretaan yhdistetyt solut ja täytetään ne ao tiedoilla, jolloin suodatus toimii...
        Alla nyt simppeli esim. asiasta. Muokkaa mieleiseksi.
        Nyt originaalitiedot Data nimisessä taulukossa, jonka nimi pitää muuttaa sopivaksi.
        Ohjelma aluksi kysyy maanosaa ja tekee sen mukaisen suodatuksen Huuhaa(muuta mieleiseksi) taulukkoon. Sen jälkeen voit tehdä tehdä vapaasti suodatuksia eri kentille alasvetovalikoista.

        Sub Pikasuodatus()
        Dim Hakuehto As String
        Dim Alue As Range
        On Error Resume Next
        Application.ScreenUpdating = False
        Application.DisplayAlerts = False

        Set Alue = Sheets("Data").Range("A1").CurrentRegion ' vaihda nimi originaalitiedot tässä
        Sheets("Huuhaa").Delete
        Worksheets.Add().Name = "Huuhaa"
        Alue.Copy Destination:=Sheets("Huuhaa").Range("A1")
        Hakuehto = Application.InputBox("Anna maanosan nimi jonka tietoja haluat tutkia", "Hakukone", "Eurooppa", Type:=2)
        Set Alue = Sheets("Huuhaa").Range("A1").CurrentRegion
        With Alue
        .UnMerge
        .Resize(.Rows.Count, 1).SpecialCells(xlBlanks).Formula = "=R[-1]C"
        Range("A1").AutoFilter Field:=1, Criteria1:=Hakuehto
        End With
        Range("A1").Select

        Application.ScreenUpdating = True
        Application.DisplayAlerts = True
        End Sub

        Keep Excelling!
        @Kunde


      • voisi
        vielä tarkennusta... kirjoitti:

        Kiitos vastauksesta! AutoFilter on siis sama toiminto kuin pikasuodatus. Olen yrittänyt tehdä kuten kuvasit viestissäsi. Mutta ongelma tulee siinä, että kun valitsen "eurooppa" niin Excel näyttää vain "euroopan" ensimmäisellä rivillä olevan maan tiedot. Eurooppa-solu on siis yhdistetty solu 12 solusta (A1:A12) ja 12 Euroopan maata ovat soluissa B1:B12. Esim kun valitsen "eurooppa" valikosta niin näen vain B1 solussa olevan maan tiedot, vaikka haluaisin nähdä kaikkien 12 euroopan maan tiedot. Tietenkin voisin kiertää ongelman pitämällä A1:A12 solut erillisinä ja kirjoittamalla A1:A12 soluihin eurooppa, jolloin ongelmaa ei syntyisi, mutta tällöin taulukon luettavuus kärsii pahasti.

        vaikka pitää ne solut erillisinä mutta laittaa fontin väriksi valkoinen, paitsi siinä alimmassa. Suodatus toimisi hyvin eikä luettavuuskaan kärsi...


      • paljon ratkaisuista!
        voisi kirjoitti:

        vaikka pitää ne solut erillisinä mutta laittaa fontin väriksi valkoinen, paitsi siinä alimmassa. Suodatus toimisi hyvin eikä luettavuuskaan kärsi...

        Joo täytyy koittaa noita ratkaisuja! Makroista tiedän vain alkeet, mutta ennenkin olen päässyt jyvälle asioista Kunden ratkaisuiden pohjalta. Jälkimmäinen ratkaisu taas kuulostaisi mukavan simppleliltä tavalta.


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

    Luetuimmat keskustelut

    1. Immu otti pataan

      Olen pettynyt, hänen piti viedä Stagalaa kuin litran mittaa - mutta kuinka kävikään? Voi hemmetti sentään.... Ääääääh!
      Kotimaiset julkkisjuorut
      129
      2328
    2. Näetkö feminismin uhkana

      Vai mahdollisuutena kun deittailet naisia? Mitä miehet mieltä feminismistä?
      Ikävä
      187
      1109
    3. Tykkäätkö halaamisesta?

      Minä en. Tänään tuttava, jolle olen maininnut että en pidä halaamisesta, yritti halata minua ja olen vieläkin ihan raivo
      Maailman menoa
      101
      978
    4. Hinduilu on suurta eksytystä

      tekosyvällinen tarina uppoaa moneen. Harhautusta todellisen Jumalan yhteydestä. Kuka haluaisi nähdä sielunvaelluksessa
      Hindulaisuus
      385
      908
    5. Kyllä me vaan

      Tykätään toisistamme ❤️ siinä ei ole mitään väärää kenellekään
      Ikävä
      53
      821
    6. Malmin tapaus on järkyttävä

      Kolme ulkomaalaistaustaista miestä raiskasi nuoren tytön tavalla, jota ei meinaa uskoa todeksi. Mikä voisi olla oikeampi
      Maahanmuutto
      291
      817
    7. Mitkä asiat teidän elämässänne on

      Tällä hetkellä parasta?
      Ikävä
      62
      799
    8. Oot nainen kaunis

      muista hymyillä jatkossakin.
      Ikävä
      46
      799
    9. Miksi kaivata miestä

      jolla ei edes muna toimi?
      Ikävä
      84
      773
    10. Mitä haluaisit kysyä

      Kaivatultasi?
      Ikävä
      51
      723
    Aihe