Vraag : Teller en Timestamp in Excel

Ik zoek iemand om de programmering VBA in de spreadsheet in bijlage uit te breiden om twee meer gegevensreeksen te omvatten. De huidige spreadsheet werkt als volgt: de spreadsheet

This vergelijkt het aantal in kolom A (nummer 1) bij het aantal in kolom B (Comp 1) die een statische waarde is en het aantal tijden nummer 1 is groter dan of minder dan Comp 1 telt.  Dan, wanneer nummer 1 groter is dan comp 1, de spreadsheet automatisch timestamps kolom U.  Een meer detaillering kan in mijn laatste post worden gevonden getiteld „Timestamp/Tegen "

I wil deze zelfde functionaliteit op de benadrukte kolommen (Y door AJ) toepassen.  Voorts wil ik slechts kolom AI aan timestamp wanneer Nummer 5 groter is dan comp 5 en ik aan timestamp AJ kolom wil wanneer Nummer 6 minder dan Comp 6 is.  Gelieve te bekijken de huidige code VBA en mijn vorige post om te zien hoe het huidige programma werkt.  Gelieve te laten me weten of zijn er om het even welke vragen.  Ik begrijp dat dit een moeilijke vraag is en ik zeker zou zijn om „A“ aan iedereen toe te wijzen wie omhoog voor challenge.

Thanks is,
Zach
Attachments:

Antwoord : Teller en Timestamp in Excel

Ik miste het beetje met het bijwerken van de tijdzegel met geval 5 toen slechts groter dan en met geval 6 slechts als minder dan. Aangezien u altijd één kolom met een andere vergelijkt, scheen het niet noodzakelijk voor me voor lijn door alle cellen in beide kolommen. Het elimineren dat de eigenschap WorksheetChange om veel eenvoudiger toestaat te worden.

Herziene hieronder getoonde code. Deze code bevestigde ook sommige insecten in CheckMyData.

Spijker zonder kop
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
Sub CheckMyData ()
Schemerige CellEntry als Waaier, rg als Waaier
Schemerige addr als Variant
Met Sheet1
    Voor Elke addr in Serie („A2“, „F2“, „K2“, „P2“, „Y2“, „AD2“)
        Reeks rg =. Waaier (CStr (addr))
        Reeks rg = Waaier (rg. Cellen (. Rows.Count, rg. Kolom). Eind (xlUp))
        Voor Elke CellEntry in rg. Cellen
            WorksheetChange CellEntry
        Daarna
    Daarna
Eind met
Application.OnTime EarliestTime: =Now + TimeValue („00: 00: 10“), Procedure: = " CheckMyData“
Sub van het eind

Sub WorksheetChange (Doel ByVal als Waaier)
Schemerige rngValue2 als Waaier, rngGreaterThan als Waaier, rngLessThan als Waaier, rngLastAction als Waaier, rngTimeStamp als Waaier
Selecteer Geval Target.Column
Het geval is <> dan rngValue2.Value
        Als rngLastAction <> „>“ toen
            rngGreaterThan = rngGreaterThan + 1
            Als Target.Column <> 30 toen rngTimeStamp.Value = nu ()
            rngLastAction = „>“
        Eind als
    ElseIf Target.Value < rngValue2=""> „<> 25 toen rngTimeStamp.Value = nu ()
            rngLastAction = „<> aan >= of  < to="">
           
Andere oplossingen  
 
programming4us programming4us