pilota-kex Creative Commons License 2011.04.20 0 0 14665

mégsem jó, nem teljesen :(

 

lehet hogy finomhangolás kérdése, de ez:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim wsLog As Worksheet, rLog As Range
    Dim rQuery As Range, c As Range, Hit As Range
    
    Set wsLog = Worksheets("Munka5")
    Set rQuery = Range("B1", Range("B" & Rows.Count).End(xlUp))
    For Each c In rQuery
        Set rLog = wsLog.Range("B" & Rows.Count).End(xlUp).Offset(1)
        Set Hit = wsLog.Range("B:B").Find(what:=c.Value, after:=rLog, LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlPrevious)
        If Hit Is Nothing Then
            rLog.Offset(, -1).Resize(, 3).Value = c.Offset(, -1).Resize(, 3).Value
            rLog.Offset(, 2) = Now
        ElseIf Hit.Offset(, 1) <> c.Offset(, 1) Then
            rLog.Offset(, -1).Resize(, 3).Value = c.Offset(, -1).Resize(, 3).Value
            rLog.Offset(, 2) = Now
        End If
    Next
End Sub

 

MOST csak akkor loggol, ha "rákényszerítem", úgyértem, ha rámegyek a munka3-ra majd a munka5-re váltok, akkor azt az állapotot loggolja, de ha elmegyek a városba dolgomat intézni, és nem váltogatom a lapokat oda-vissza, akkor a munka3 ezen kódja "nem dolgozik" nem loggol automatikusan, csakis a váltásnál.(pedig a munkafüzet mindig aktív és online)

_____________________________________________________________________

Jimmy The Hand: minden eddigitől elvonatkoztatva: nem lenne egyszerübb, ha az egész loggolásnak EGYETLEN feltétel szerint kellene történnie?? semmi összehasonlítgatás meg efféle. CSAK annyi, hogy a weblekérdezéses munka3 nevű lapon, ha a "D" oszlop valamely cellájában a kód találna egy "L" karaktert, akkor csak az adott sor A, B, C oszlopában szereplő értéket (számított értéket!) loggolja csak (idővel együtt).

mert én azt az "L" karaktert logikai fügvényekkel el tudom helyezni a "D" oszlopba.

 

Üdvözlet!