Yhteys kahden työkirjan välillä

Anonyymi

Miten saisi luotua yhteyden kahden työkirjan välille, niin, että toisessa työkirjassa käytetty muotoilu siirtyy toiselle, jos arvo on sama?

Eli jos työkirjassa 1 on soluissa A1-A5 näin:
osa 101
osa 102
osa 103
osa 104
osa 105

ja näistä A2 "osa 102" on täytetty vihreäksi.

työkirjassa 2 on soluissa B3-B6 näin:
osa 308
osa 102
osa 222
osa 104

Miten tämän työkirjan 2 saisi linkitettyä työkirjaan 1, niin että muotoilu toistuisi, kun arvo on sama, eli työkirjassa 2 solun B4 täyttö olisi myös vihreä, koska työkirjassa 1 solussa A2 on sama arvo ja se on täytetty vihreäksi?

12

1117

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Riippuu vähän siitä miten noihin soluihin tuotetaan arvot ja samoin se ensimmäinen vihreä täyttö? Kaavoilla vaiko manuaalisesti?
      Solun sisältö voidaan helposti viitata haettavaksi toisesta työkirjasta. Samoin täyttövärille voi tehdä ehtolausekkeen tietyihin soluihin.

    • Anonyymi

      Excelissä ei taida olla keinoa havaita muotoilun muuttumista.

      • Anonyymi
        kunde kirjoitti:

        https://www.dropbox.com/s/uzq106xr4pv2cof/ScreenRecorderProject283.mp4?dl=0

        Keep EXCELing
        @Kunde

        Ko. sivun modulissa lienee joku seuraavan kaltainen. Tämä toimii oikein, jos tuo Test.xlsx on valmiiksi auki. Jos se on kiinni, tarkoitus olisi että se avataan ja sitten muuttamisen jälkeen talletetaan ja suljetaan. Jostain syystä makro pysähtyy aina tiedoston tallettamisen jälkeen, ikään kuin siinä olisi painettu breikkiä. Se jatkaa ongelmitta painamalla f5 . Askeltamalla tuo kohta ei ilmoita mitään poikkeavaa. En keksinyt syytä.

        Private Sub Worksheet_SelectionChange(ByVal Target As Range)

            nimi = "Test.xlsx"
            Test = "C:\temp\excel\" & nimi
            If Dir(Test) = "" Then Exit Sub
            avattuna = OnAuki(nimi)
            Set tämä = ThisWorkbook

            Application.EnableEvents = False
            On Error GoTo err:
            Application.Undo
            muutettu = ActiveCell.Address
            Application.Undo
            arvo = Range(muutettu).Value
            Range(muutettu).Copy
            Set f = Workbooks.Open(Filename:=Test)

            KäytettyAlue  = "A1:" & f.Sheets("Sheet1").Range("A1").SpecialCells(xlCellTypeLastCell).Address
            For Each solu In f.Sheets("Sheet1").Range(KäytettyAlue )
                If solu.Value = arvo And arvo <> "" Then
                    solu.PasteSpecial Paste:=xlPasteFormats
                    Debug.Print "format"
                End If
            Next solu
            
            tämä.Activate
            Target.Select
            Application.SendKeys ("{ESC}")
            
            Application.EnableEvents = True
            If Not avattuna Then
                f.Save  ' Tämän jälkeen makro pysähtyy
                f.Close
            End If
        Exit Sub

        err:
            Application.EnableEvents = True
            

        End Sub

        Private Function OnAuki(ByVal f As String) As Boolean
            Dim wb As Workbook
            On Error Resume Next
            Set wb = Application.Workbooks.Item(f)
            OnAuki = (Not wb Is Nothing)
        End Function


      • Anonyymi kirjoitti:

        Ko. sivun modulissa lienee joku seuraavan kaltainen. Tämä toimii oikein, jos tuo Test.xlsx on valmiiksi auki. Jos se on kiinni, tarkoitus olisi että se avataan ja sitten muuttamisen jälkeen talletetaan ja suljetaan. Jostain syystä makro pysähtyy aina tiedoston tallettamisen jälkeen, ikään kuin siinä olisi painettu breikkiä. Se jatkaa ongelmitta painamalla f5 . Askeltamalla tuo kohta ei ilmoita mitään poikkeavaa. En keksinyt syytä.

        Private Sub Worksheet_SelectionChange(ByVal Target As Range)

            nimi = "Test.xlsx"
            Test = "C:\temp\excel\" & nimi
            If Dir(Test) = "" Then Exit Sub
            avattuna = OnAuki(nimi)
            Set tämä = ThisWorkbook

            Application.EnableEvents = False
            On Error GoTo err:
            Application.Undo
            muutettu = ActiveCell.Address
            Application.Undo
            arvo = Range(muutettu).Value
            Range(muutettu).Copy
            Set f = Workbooks.Open(Filename:=Test)

            KäytettyAlue  = "A1:" & f.Sheets("Sheet1").Range("A1").SpecialCells(xlCellTypeLastCell).Address
            For Each solu In f.Sheets("Sheet1").Range(KäytettyAlue )
                If solu.Value = arvo And arvo <> "" Then
                    solu.PasteSpecial Paste:=xlPasteFormats
                    Debug.Print "format"
                End If
            Next solu
            
            tämä.Activate
            Target.Select
            Application.SendKeys ("{ESC}")
            
            Application.EnableEvents = True
            If Not avattuna Then
                f.Save  ' Tämän jälkeen makro pysähtyy
                f.Close
            End If
        Exit Sub

        err:
            Application.EnableEvents = True
            

        End Sub

        Private Function OnAuki(ByVal f As String) As Boolean
            Dim wb As Workbook
            On Error Resume Next
            Set wb = Application.Workbooks.Item(f)
            OnAuki = (Not wb Is Nothing)
        End Function

        Videollani testi työkirja on suljettuna.
        Melkoista kikkailua tuo koodi...
        Virheen syy...
        https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/code-execution-has-been-interrupted?f1url=?appId=Dev11IDEF1&l=en-US&k=k(vblr6.chm1011317);k(TargetFrameworkMoniker-Office.Version=v16)&rd=true

        Keep EXCEling
        @Kunde


      • Anonyymi
        kunde kirjoitti:

        Videollani testi työkirja on suljettuna.
        Melkoista kikkailua tuo koodi...
        Virheen syy...
        https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/code-execution-has-been-interrupted?f1url=?appId=Dev11IDEF1&l=en-US&k=k(vblr6.chm1011317);k(TargetFrameworkMoniker-Office.Version=v16)&rd=true

        Keep EXCEling
        @Kunde

        Korjaus:

        Application.EnableCancelKey = xlDisabled
        f.Save ' nyt makro pääsee tästä yli pysähtymättä
        Application.EnableCancelKey = xlErrorHandler

        Yhä on mysteeri, miksi Excel toisinaan temppuilee ja tekee aivan omiaan.


      • Anonyymi kirjoitti:

        Korjaus:

        Application.EnableCancelKey = xlDisabled
        f.Save ' nyt makro pääsee tästä yli pysähtymättä
        Application.EnableCancelKey = xlErrorHandler

        Yhä on mysteeri, miksi Excel toisinaan temppuilee ja tekee aivan omiaan.

        Kannattaa välttää noita Keypress komentoja koodissa, eivät toimi luotettavasti


      • Anonyymi

      • Anonyymi kirjoitti:

        Kannattaa vaihtaa Libre-Officeen niin nää toimiikin, Exelissä kun toimii miten sattuu!

        Turhaa anonyymi mulle naljailet. Koodini toimii loistavasti, kuten videolta voit nähdä.
        Anonyymin koodissa se ongelma oli eikä minun ja hän on koodissaan käyttänyt noita Keypress komentoja, jotka eivät ole luotettavia, eikä niitä olisi kovin suotavaa käyttää.


      • Anonyymi
        kunde kirjoitti:

        Kannattaa välttää noita Keypress komentoja koodissa, eivät toimi luotettavasti

        Kokeilin myös ilman komentoa Application.SendKeys ("{ESC}")
        Se ei auttanut. En tiedä, olisiko toiminut boottaamisen jälkeen.


      • Anonyymi
        Anonyymi kirjoitti:

        Kannattaa vaihtaa Libre-Officeen niin nää toimiikin, Exelissä kun toimii miten sattuu!

        Käyttäisin mielelläni, mutta
        - Makrojen teko Libreen on kertaluokkaa hankalampaa.
        - Kaikkea sitä mitä Excelillä voi, ei ole mahdollista tehdä Librellä.
        - Töissä nyt vaan käytetään MS Officea.


      • Anonyymi
        Anonyymi kirjoitti:

        Kannattaa vaihtaa Libre-Officeen niin nää toimiikin, Exelissä kun toimii miten sattuu!

        Näin se on MS office paistaa toimimattomuudelaan.


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

    Luetuimmat keskustelut

    1. Kuolemanrangaistus

      Mielestäni kuolemanrangaistus on väärin kaikissa tilanteissa. Vaikka joku olisi murhannut 10 ihmistä, hänen surmaaminen
      Laki ja rikos
      151
      7642
    2. Miksi persut eivät häädä mamuja pois Suomesta?

      Sitä vartenhan persut äänestettiin valtaan. Nyt valta on persuilla. Mamut nostaa työttömyyskorvauksia. Persut huutaa mam
      Maailman menoa
      205
      5651
    3. Eduskunnan setämiehet eivät häiritse

      Porvariston sedät kertoivat kuorossa, että eivät tiedä häirinnästä mitään.
      Maailman menoa
      35
      4574
    4. KL - Sähköautoilu aiheuttaa lisäkustannuksia muille tehopiikkimaksujen muodossa!

      Kauppalehti 15.1.2026 Kommentti / Sähköautoista tuli ongelma – Uusi ”vero” uhkaa Kun perhe ostaa sähköauton ja laittaa
      Hybridi- ja sähköautot
      10
      4196
    5. Riikka Purra ei estä tehomaksun käyttöönottoa

      Sähkön hinnoittelua koskevan määräyksen on määrä astua voimaan vuoden 2029 alusta, Energiavirastosta kerrotaan. Määräyk
      Maailman menoa
      75
      3924
    6. Sinä olet minun forEver

      Sinä olet minun sielussain, sydämessäin, huulillain, sinä olet ain, Sinä olet vieressäin, kainalossain, sylissäin, ain,
      Ikävä
      30
      3656
    7. Jaguar i pace sähköauto hajosi. Jopa 100 tonnia akun vaihto. Edullisia kilometrejä

      https://www.iltalehti.fi/autouutiset/a/fcaa5ae4-c04d-414d-ac54-dab991758b2e Tuo että sähköautossa ei lämmitys toimi on
      Hybridi- ja sähköautot
      12
      2971
    8. Sanna Marinille pedataan paluuta pääministeriksi?

      Näyttäisi mylly lähteneen käyntiin nyt toden teolla. Nykyiset oikeistodemarit haukutaan vasemmistodemareiden toimesta ni
      Maailman menoa
      103
      2894
    9. Muistakaa demarit, että TE petitte, ei vihreät tai vas.liitto

      Te veitte eduskunnasta turvallisen tilan, veditte sen viemäristä alas. Te demarit, itsensä ylentäneet moraalinvartijat,
      Maailman menoa
      71
      2416
    10. Silminnäkijät kertovat IS:lle useista törkeistä SDP:ssä tapahtuneista häirintätapauksista.

      https://www.is.fi/politiikka/art-2000011749874.html Silminnäkijöiden Iltasanomille kertomusten mukaan SDP:ssä on tapahtu
      Maailman menoa
      112
      2305
    Aihe