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.
Hiirin kohdistimen mukaisen rivin korostaminen
10
1462
Vastaukset
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 Subtee 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 = Falsemielenkiintoinen ilmiö...
ei äkkiseltään kyllä keksi mikä ton aiheuttaa, mutta tsekataankunde kirjoitti:
mielenkiintoinen ilmiö...
ei äkkiseltään kyllä keksi mikä ton aiheuttaa, mutta tsekataannä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 SubDo 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
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 t3912450V*ttuu että mä haluan sua
Jos jotain ihmistä voi kunnolla haluta, niin hän on se. Voi Luoja auta jo! Joku jeesus hjelppa mej!914271Nolointa ikinä miehelle
On ghostata nainen jonka kanssa on ollut ystävä tai ollu orastavaa tapailua pidemmän aikaa. Osoittaa sellaista moukkamai1094012- 513648
Eli jos toisen hiki haisee ns. omaan nenään siedettävältä
Se kertoo hyvästä yhteensopivuudesta. Selvä! Olet mies minun. 🫵🥳533351- 1163304
Sattuma ja muutama väärinkäsitys
vaikuttivat siihen millaiseksi tämä kaikki muodostui. Pienet aikanaan huomaamattomat käänteet. Seuraava näytös on jo tul482235- 392143
Keskusta hajoaa Palojärvi lähtee
Suomen Keskustan ryhmä hajoaa Kemijärvellä. Kalastaja Palojärvi sai tarpeekseen ja loikkasi Sitoutumattomat Aati Virkkul271968On sillä rääpyä
Tuo ex kuntajohtaja Lea Tolonen kehtaakin tulla Ähtäriin. Ajoi laivan Karille. Kari Heikkilä oikaisi taloutta, sai laiva131651