Ehdollinen siirto toiseen työkirjaan

makrollako

Taul1:ssä on taulukko jonka A-sarakkeessa on päivämäärä, miten saan taul2 haettua määrätyn päivämäärän kaikki rivit?

Yritän saada aikaan jotain tämmöistä: käyttäjä syöttää taul2 soluun A1 haluamansa päivämäärän ja käynnistää makron painikkeesta. Makro tuo haetun päivän rivit taul1:stä taul2:een alkaen solusta A3.

5

516

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • taulukko2 moduuliin napille koodi

      Private Sub CommandButton1_Click()
      Siirrä
      End Sub

      moduuliin...
      Option Explicit

      Sub Siirrä()
      Dim Löydetty As Range
      Dim haku As Date
      On Error Resume Next
      Application.ScreenUpdating = False
      Worksheets("Sheet2").Activate
      Range("A3:A1000").EntireRow.Clear
      haku = CDate(Range("A1"))
      Set Löydetty = EtsiJaSiirrä(haku, Range("Sheet1!A:A")).EntireRow
      Union(Löydetty, Löydetty).Copy Range("Sheet2!A3")
      Range("A1").Select
      Application.ScreenUpdating = True
      End Sub


      Function EtsiJaSiirrä(Hakuehto As Variant, HakuAlue As Range) As Range
      Dim solu As Range
      Dim EkaOsoite As String

      With HakuAlue
      Set solu = .Find( _
      What:=Hakuehto, _
      LookIn:=xlValues, _
      LookAt:=xlWhole, _
      SearchOrder:=xlByRows, _
      SearchDirection:=xlNext, _
      MatchCase:=False, _
      SearchFormat:=False)
      If Not solu Is Nothing Then
      Set EtsiJaSiirrä = solu
      EkaOsoite = solu.Address
      Do
      Set EtsiJaSiirrä = Union(EtsiJaSiirrä, solu)
      Set solu = .FindNext(solu)
      Loop While Not solu Is Nothing And solu.Address EkaOsoite
      End If
      End With
      Worksheets("Sheet2").Activate
      End Function

      muuttele nimet sopiviksi

      • Tiina K.

        Mainio koodi. Vähän on tilausta samanlaiseen...

        A-sarakkeessa kulkee päivämäärät ja B-E sarakkeella on arvoja.

        Miten saisi tehtyä toiselle sivulle kuvaajan, jossa on syöttö solut alku ja loppu sekä mitä saraketta halutaan kuvattavan. Niihin laitetaan niin se hakee kyseisen alueen luvut ja tekee kuvaajan. Nykyään olen tehnyt piilottelemalla rivejä sen mukaan mitä haluan jne. :)

        Helpottaisi ilkeän pomon nopeita pyyntöjä. Voisin vaikka kokeilla tehdä sitä myös visual basicillä, niin samalla tulisi sekin tutuksi.


      • makrollako

        Kiitos vastauksesta. Valitettavasti ehdin testata tätä vasta ensi viikolla, mutta eiköhän tuo ole juuri sitä mitä haen.


      • Tiina K. kirjoitti:

        Mainio koodi. Vähän on tilausta samanlaiseen...

        A-sarakkeessa kulkee päivämäärät ja B-E sarakkeella on arvoja.

        Miten saisi tehtyä toiselle sivulle kuvaajan, jossa on syöttö solut alku ja loppu sekä mitä saraketta halutaan kuvattavan. Niihin laitetaan niin se hakee kyseisen alueen luvut ja tekee kuvaajan. Nykyään olen tehnyt piilottelemalla rivejä sen mukaan mitä haluan jne. :)

        Helpottaisi ilkeän pomon nopeita pyyntöjä. Voisin vaikka kokeilla tehdä sitä myös visual basicillä, niin samalla tulisi sekin tutuksi.

        moduuliin...
        ja liitä koodi nappiin

        muuttele nimet sopiviksi ja nauhoita makro , jolla saat oikean kaaviotyypin...
        nyt
        sheet2 solut D(alkupvm),E(loppupvm),F(mikä sarake näytetään) syöttösoluina ja tiedot sheet1 sarakkeet A-D


      • kunde kirjoitti:

        moduuliin...
        ja liitä koodi nappiin

        muuttele nimet sopiviksi ja nauhoita makro , jolla saat oikean kaaviotyypin...
        nyt
        sheet2 solut D(alkupvm),E(loppupvm),F(mikä sarake näytetään) syöttösoluina ja tiedot sheet1 sarakkeet A-D

        moduuliin...

        Sub SuodataJaTeeKaavio()
        Dim dAlku As Date
        Dim dLoppu As Date
        Dim lAlku As Long
        Dim lLoppu As Long
        Dim Näytä As String
        Dim vika As Integer
        Dim kaavio As ChartObject
        Dim Kaaviot As ChartObjects
        On Error Resume Next
        Application.ScreenUpdating = False
        Worksheets("Sheet2").Activate
        For Each kaavio In ActiveSheet.ChartObjects
        kaavio.Select
        kaavio.Delete
        Next
        Columns("A:B").Clear
        Näytä = Range("F1")
        If IsDate(Range("D1")) Then
        dAlku = Range("D1")
        dAlku = DateSerial(Year(dAlku), Month(dAlku), Day(dAlku))
        lAlku = dAlku
        End If
        If IsDate(Range("E1")) Then
        dLoppu = Range("E1")
        dLoppu = DateSerial(Year(dLoppu), Month(dLoppu), Day(dLoppu))
        lLoppu = dLoppu
        End If
        Worksheets("Sheet1").Activate
        With Sheet1
        .AutoFilterMode = False
        .Range("A:D").AutoFilter
        .Range("A:D").AutoFilter Field:=1, Criteria1:=">=" & lAlku, Operator:=xlAnd, Criteria2:="


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

    Luetuimmat keskustelut

    1. Paljonko aikaa on kulunut siitä kun viimeksi tapasit hänet?

      Päiviä? Viikkoja? Kuukausia? Vuosia?
      Ikävä
      48
      2110
    2. Se oli siinä sitten

      Yhdysvaltain presidentti Donald Trump on määrännyt kaiken maan Ukrainalle toimittaman sotilaallisen tuen tauolle, kertoo
      NATO
      690
      2090
    3. Mikä sinua ja kaivattuasi

      Yhdistää?
      Ikävä
      120
      1993
    4. Tiedätkö, että haluaisin panna

      Sinua. Onko sinulla samanlaiset ajatukset ja tunteet?
      Ikävä
      77
      1699
    5. Ajelen varmaan siellä suunnalla

      taas yöllä, vahingossa käyn sun pihalla. 😏 m
      Ikävä
      48
      1678
    6. Trump tekee rauhan Amerikan ja Venäjän ehdoilla

      Ukraina luovuttaa Venäjän haluamat alueet Venäjälle. Ukraina luovuttaa Amerikan haluamat arvokkaat mineraalit Amerikall
      Maailman menoa
      239
      1555
    7. Hyväksytty kaivattusi

      Vartaloa vai et? Rehellinen vastaus
      Ikävä
      31
      1321
    8. Syvälliset keskustelut

      Olisivat tärkeintä ensisijaisesti hänen kanssaan Tulisi sellainen hetki, mutta kaikki meni pieleen
      Ikävä
      20
      1269
    9. Olisipa sitä henkisesti eheämpi ja rohkeampi

      mikään maallinen mammona ei itseäni kiinnosta, eikä sen menetys kiinnostus. Mutta kun kohtaa jonkun sykäyttävän ihmisen,
      Ikävä
      17
      1155
    10. Kyllähän tämä vähän kirpaisee

      Mutta oman sisäisen rauhan vuoksi jätän sinut nyt historiaan. Todennäköisesti olet jo sinäkin mennyt eteenpäin. Olipah
      Ikävä
      38
      1097
    Aihe