Hiirin kohdistimen mukaisen rivin korostaminen

Markus R

Kuinka saan korostettua aina sen hetkisen klikatun solun mukaisen rivin kokonaan jollain tietyllä haluamallani tyylillä? Esim. kevyt osittain läpinäkyvä harmaa ei olisi pahitteeksi.

10

1463

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • YhisWorkbook moduuliin...
      Option Explicit
      Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
      Static Vanha As Range
      On Error Resume Next
      If Not Vanha Is Nothing Then
      Vanha.EntireRow.Interior.ColorIndex = xlColorIndexNone
      End If
      Target.EntireRow.Interior.ColorIndex = 15
      Set Vanha = Target
      End Sub

      • tee testi tyyli ja koodi ThisWorkbook moduuliin...

        Option Explicit
        Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
        Static Vanha As Range
        On Error Resume Next
        If Not Vanha Is Nothing Then
        Vanha.EntireRow.Interior.ColorIndex = xlColorIndexNone
        End If
        Target.EntireRow.Style = "testi"
        Set Vanha = Target
        End Sub


      • Markus R

        Kiitokset jälleen kunde!

        Tuo koodin pätkä aiheuttaa sen, ettei tavallinen copy-paste enää toimi excelissä. Kokeilin copy-pastea myös makrona, mutta ei onnistunut vaan valitti jotain

        Range("A6:HJ6").Select
        Selection.Copy
        Cells(R, 2).Select
        Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
        Application.CutCopyMode = False


      • Markus R kirjoitti:

        Kiitokset jälleen kunde!

        Tuo koodin pätkä aiheuttaa sen, ettei tavallinen copy-paste enää toimi excelissä. Kokeilin copy-pastea myös makrona, mutta ei onnistunut vaan valitti jotain

        Range("A6:HJ6").Select
        Selection.Copy
        Cells(R, 2).Select
        Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
        Application.CutCopyMode = False

        mielenkiintoinen ilmiö...
        ei äkkiseltään kyllä keksi mikä ton aiheuttaa, mutta tsekataan


      • kunde kirjoitti:

        mielenkiintoinen ilmiö...
        ei äkkiseltään kyllä keksi mikä ton aiheuttaa, mutta tsekataan

        näköjään tyhjentää leikepöydän sisällön...


      • kunde kirjoitti:

        näköjään tyhjentää leikepöydän sisällön...

        kopioi/liittää aktiiviseen soluun kopioidun/leikatun alueen.

        ThisWorkbook moduuliin...

        Option Explicit
        Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
        Static Vanha As String
        On Error Resume Next
        Application.EnableEvents = False
        Application.ScreenUpdating = False
        If Application.CutCopyMode = 1 Then
        Range(Vanha).Copy Target
        End If
        If Application.CutCopyMode = 2 Then
        Range(Vanha).Copy Range(Target.Address)
        Range(Vanha) = ""
        End If
        Cells.EntireRow.Interior.ColorIndex = xlColorIndexNone
        Target.EntireRow.Interior.ColorIndex = 15
        Vanha = Target.Address
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub


      • Markus R
        kunde kirjoitti:

        näköjään tyhjentää leikepöydän sisällön...

        Varsinainen leikepöytä ei tyhjenny, koska paste onnistuu toiseen tauluun tai tiedostoon.

        En ole koskaan ymmärtänyt excelin logiikkaa siinä, että jos copy ja pasten välissä syöttää tietoa jonnekkin ei enää paste onnistu. (solun copy-paste). Ratkaisua en vielä netistä löytänyt.


      • Markus R
        kunde kirjoitti:

        kopioi/liittää aktiiviseen soluun kopioidun/leikatun alueen.

        ThisWorkbook moduuliin...

        Option Explicit
        Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
        Static Vanha As String
        On Error Resume Next
        Application.EnableEvents = False
        Application.ScreenUpdating = False
        If Application.CutCopyMode = 1 Then
        Range(Vanha).Copy Target
        End If
        If Application.CutCopyMode = 2 Then
        Range(Vanha).Copy Range(Target.Address)
        Range(Vanha) = ""
        End If
        Cells.EntireRow.Interior.ColorIndex = xlColorIndexNone
        Target.EntireRow.Interior.ColorIndex = 15
        Vanha = Target.Address
        Application.EnableEvents = True
        Application.ScreenUpdating = True
        End Sub

        Do diih! Tuo ainakin hoitaa copy-pasten jollain tavalla. Miinuksena on, että paste tapahtuu ilman ctrl v:tä, mutta kyllä tuolla pääsee jo eteenpäin.

        Kiitos!


      • VariMägi
        Markus R kirjoitti:

        Varsinainen leikepöytä ei tyhjenny, koska paste onnistuu toiseen tauluun tai tiedostoon.

        En ole koskaan ymmärtänyt excelin logiikkaa siinä, että jos copy ja pasten välissä syöttää tietoa jonnekkin ei enää paste onnistu. (solun copy-paste). Ratkaisua en vielä netistä löytänyt.

        http://discuss.fogcreek.com/askjoel/default.asp?cmd=show&ixPost=3479&ixReplies=12

        Kolmannesta vastuksesta vasta juttu lähtee aukeamaan (linkissä). Ohjelmallisesti copy-paste taakse liitty paljon muitakin asioita mitkä katoavat kun tekee jossain solussa jotain muuta kuin copy-paste jutulla yleensä on tarkoitus. Perussyy tähän käyttäymiseen on mikin perussofta mihin läytyy varmasti 10^6 perustelua. Varmasti hyviä mutta joskus ärsyttäviä.


      • Markus R kirjoitti:

        Do diih! Tuo ainakin hoitaa copy-pasten jollain tavalla. Miinuksena on, että paste tapahtuu ilman ctrl v:tä, mutta kyllä tuolla pääsee jo eteenpäin.

        Kiitos!

        nyt lähes normaali toiminnat...
        leikkaa heti kun valitaan solu...
        paste special ei toimi tietenkään...

        katotaan saako paremmaksi vielä

        viittaus Microsoft Forms 2.0 Object Libraryyn

        ThiWorkbook moduuliin...

        Option Explicit
        Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
        Static Vanha As Range
        Static kopiointi As Integer
        On Error Resume Next
        kopiointi = Application.CutCopyMode
        If Not Vanha Is Nothing Then
        Vanha.EntireRow.Interior.ColorIndex = xlColorIndexNone
        End If
        Target.EntireRow.Interior.ColorIndex = 15
        If kopiointi = 1 Then
        Leikepöytä (AlueLeikepöytä(Vanha))
        End If
        If kopiointi = 2 Then
        Leikepöytä (AlueLeikepöytä(Vanha))
        Vanha = ""
        End If
        Set Vanha = Target
        End Sub

        tavalliseen moduuliin...
        Option Explicit
        Option Compare Text
        Private DataObj As MSForms.DataObject
        Public Function Leikepöytä(S As String)
        On Error GoTo virhe:
        If DataObj Is Nothing Then
        Set DataObj = New MSForms.DataObject
        End If
        DataObj.SetText S
        DataObj.PutInClipboard
        Exit Function
        virhe:
        Exit Function
        End Function
        Public Function AlueLeikepöytä(Alue As Range) As String

        Dim Rivi As Long
        Dim Sarake As Long
        Dim Teksti As String
        For Rivi = 1 To Alue.Rows.Count
        For Sarake = 1 To Alue.Columns.Count
        Teksti = Teksti & Alue(Rivi, Sarake).Value & _
        IIf(Sarake < Alue.Columns.Count, vbTab, vbNullString)
        Next Sarake
        Teksti = Teksti & IIf(Rivi < Alue.Rows.Count, vbNewLine, vbNullString)
        Next Rivi
        AlueLeikepöytä = Teksti
        End Function


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

    Luetuimmat keskustelut

    1. JOKO OLETTE KUULLET, MITÄ KIURUVEDELLÄ ON SATTUNUT!

      Oletteko jo kuulleet, mitä Kiuruvedellä on sattunut, voi hyvänen aika? Aivan viime tuntien aikana olisi sattunut, jos t
      Kiuruvesi
      39
      12840
    2. V*ttuu että mä haluan sua

      Jos jotain ihmistä voi kunnolla haluta, niin hän on se. Voi Luoja auta jo! Joku jeesus hjelppa mej!
      Ikävä
      91
      4441
    3. Nolointa ikinä miehelle

      On ghostata nainen jonka kanssa on ollut ystävä tai ollu orastavaa tapailua pidemmän aikaa. Osoittaa sellaista moukkamai
      Ikävä
      114
      4124
    4. Katsoitko mua yhtään

      Kun nähtiin 🥺.
      Ikävä
      51
      3688
    5. Eli jos toisen hiki haisee ns. omaan nenään siedettävältä

      Se kertoo hyvästä yhteensopivuudesta. Selvä! Olet mies minun. 🫵🥳
      Ikävä
      53
      3381
    6. Mikä sinua eniten

      Huolestuttaa tässä tilanteessa?
      Ikävä
      120
      3367
    7. Sattuma ja muutama väärinkäsitys

      vaikuttivat siihen millaiseksi tämä kaikki muodostui. Pienet aikanaan huomaamattomat käänteet. Seuraava näytös on jo tul
      Ikävä
      49
      2272
    8. Koska olet viimeksi nähnyt ikävän kohteesi?

      Ja mitä tarjoat hänelle kun koputtaa oveesi?
      Ikävä
      43
      2241
    9. Keskusta hajoaa Palojärvi lähtee

      Suomen Keskustan ryhmä hajoaa Kemijärvellä. Kalastaja Palojärvi sai tarpeekseen ja loikkasi Sitoutumattomat Aati Virkkul
      Kemijärvi
      31
      2044
    10. On sillä rääpyä

      Tuo ex kuntajohtaja Lea Tolonen kehtaakin tulla Ähtäriin. Ajoi laivan Karille. Kari Heikkilä oikaisi taloutta, sai laiva
      Ähtäri
      14
      1718
    Aihe