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

605

    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. Orpo hiiri kadoksissa, Marin jo kommentoi

      Kuinka on valtiojohto hukassa, kun vihollinen Grönlantia valloittaa? Putinisti Purra myös hiljaa kuin kusi sukassa.
      Maailman menoa
      126
      6400
    2. Lopeta jo pelleily, tiedän kyllä mitä yrität mies

      Et tule siinä onnistumaan. Tiedät kyllä, että tämä on just sulle. Sä et tule multa samaan minkäänlaista responssia, kosk
      Ikävä
      376
      6195
    3. Nuori lapualainen nainen tapettu Tampereella?

      Työ­matkalainen havahtui erikoiseen näkyyn hotellin käytävällä Tampereella – tämä kaikki epäillystä hotelli­surmasta tie
      Lapua
      71
      6183
    4. Tampereen "empatiatalu" - "Harvoin näkee mitään näin kajahtanutta"

      sanoo kokoomuslainen. Tampereen kaupunginvaltuuston maanantain kokouksessa käsiteltävä Tampereen uusi hyvinvointisuunni
      Maailman menoa
      344
      3992
    5. Lidl teki sen mistä puhuin jo vuosikymmen sitten

      Eli asiakkaat saavat nyt "skannata" ostoksensa keräilyvaiheessa omalla älypuhelimellaan, jolloin ei tarvitse mitään eril
      Maailman menoa
      148
      2415
    6. Ukraina, unohtui korona - Grönlanti, unohtu Ukraina

      Vinot silmät, unohtui Suomen valtiontalouden turmeleminen.
      Maailman menoa
      4
      2355
    7. Orpo pihalla kuin lumiukko

      Onneksi pääministerimme ei ole ulkopolitiikassa päättäjiemme kärki. Hänellä on täysin lapsellisia luuloja Trumpin ja USA
      Kansallinen Kokoomus
      131
      1456
    8. Onko täällä helmessä tapahtunut vakava rikos?

      Onko kuullut kukaan mitään.
      Haapavesi
      13
      1299
    9. Miten kauan sulla menisi

      Jos tulisit mun luo tänne nyt kahvinkeittoon?
      Ikävä
      187
      1128
    10. Miksi me oikein

      Rakastuttiin?
      Ikävä
      64
      960
    Aihe