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

1586

    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. S-kauppa nosti hintoja, K-kauppa laski

      Elintarvikkeiden arvonlisävero laski vuodenvaihteessa 13,5 prosenttiin. S-kauppa siirsi alennuksen suoraan katteisiin pi
      Maailman menoa
      45
      5473
    2. Vilma Nissinen pyytää anteeksi rasistisia lausuntojaan

      Nöyrtyi kuten persut yleensäkin. On kyllä noloa tuollainen vätystely, kun ei ole miestä seisoa omien lausuntojensa takan
      Maailman menoa
      297
      5294
    3. Hiihtäjä Vilma Nissisen kommentit aiheutti paniikkia

      ja hernettä vedettiin nenään. Nissinen kertoi torstaina haastattelussa, kun häneltä kysyttiin, että tykkääkö hän hiihtä
      Maailman menoa
      71
      4566
    4. Riikka Purra: "Kokoomus haluaa leikata pienituloisten etuuksista - Se ei meille käy"

      Näin vakuutti persujen Purra edellisten eduskunta vaalien alla,. https://www.ku.fi/artikkeli/4910942-kun-uudessa-videos
      Maailman menoa
      69
      2455
    5. Sandels tölkin hinta nousi 1,29 eurosta 1,32 euroon

      Mitähän järkeä valtiolla on verottaa tuotakin elintarviketta niin kovasti, että on järkevämpää käydä hakemassa ulkomailt
      Köyhyys
      48
      1900
    6. Nyt ottaa persua pattiin: sähköauto joulukuun myydyin

      🤣 prööt prööt pakoputkellaan pörisevää persua ottaa nyt saamaristi pattiin, kun paristoilla kulkeva sähköauto on noussu
      Maailman menoa
      31
      1848
    7. Ovatko Perussuomalaiset kommunisteja?

      Toiset sanovat että ovat, toiset sanovat että eivät. Ainakin heillä on paljon sen aatteen piirteitä, koska haluavat kont
      Maailman menoa
      26
      1800
    8. Ikävä uutinen uudesta Unelmia Italiassa kaudesta - Iso pettymys tv-katsojille!

      Unelmia Italiassa -sarja kertoo Ellen Jokikunnaksen perheen elämästä Suomessa ja Italiassa. Nyt Ellen on kertonut tuleva
      Tv-sarjat
      16
      1772
    9. Lindtmanin pääministeriys lähenee päivä päivältä

      Suomen kansan kissanpäivät alkavat siitä hetkestä, kun presidentti Stubb on tehnyt nimityksen. Ainoastaan ylin tulodesi
      Maailman menoa
      81
      1735
    10. Oon kyllä välillä ollut susta

      Nainen huolissani, en oo niin sydämetön mitä tunnut ajattelevan
      Ikävä
      105
      1526
    Aihe