How to keep history of data changes in one excel workbook or sheet to another workbook or sheet





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







3















good afternoon,



I am working on an excel sheet where I have a table of data. This data represents several metrics that my department wants to keep track on. Whenever someone wants to populate the table with new data, the previous data in the cells are lost.



How can someone create a separate sheet where you can store all the values of that table automatically? I mean, when a change is done in one of the table cell, the new value to be automatically stored in another table that will keep all the values(old and new) of the cells? I tried the "track changes" but I'm not sure whether I like this way so much.



Does anyone know a more efficient way to do this? Through a macro for example?



Thank you!










share|improve this question























  • Is there an Excel add-on for it?

    – Eric Wang
    Jan 17 at 2:38


















3















good afternoon,



I am working on an excel sheet where I have a table of data. This data represents several metrics that my department wants to keep track on. Whenever someone wants to populate the table with new data, the previous data in the cells are lost.



How can someone create a separate sheet where you can store all the values of that table automatically? I mean, when a change is done in one of the table cell, the new value to be automatically stored in another table that will keep all the values(old and new) of the cells? I tried the "track changes" but I'm not sure whether I like this way so much.



Does anyone know a more efficient way to do this? Through a macro for example?



Thank you!










share|improve this question























  • Is there an Excel add-on for it?

    – Eric Wang
    Jan 17 at 2:38














3












3








3


1






good afternoon,



I am working on an excel sheet where I have a table of data. This data represents several metrics that my department wants to keep track on. Whenever someone wants to populate the table with new data, the previous data in the cells are lost.



How can someone create a separate sheet where you can store all the values of that table automatically? I mean, when a change is done in one of the table cell, the new value to be automatically stored in another table that will keep all the values(old and new) of the cells? I tried the "track changes" but I'm not sure whether I like this way so much.



Does anyone know a more efficient way to do this? Through a macro for example?



Thank you!










share|improve this question














good afternoon,



I am working on an excel sheet where I have a table of data. This data represents several metrics that my department wants to keep track on. Whenever someone wants to populate the table with new data, the previous data in the cells are lost.



How can someone create a separate sheet where you can store all the values of that table automatically? I mean, when a change is done in one of the table cell, the new value to be automatically stored in another table that will keep all the values(old and new) of the cells? I tried the "track changes" but I'm not sure whether I like this way so much.



Does anyone know a more efficient way to do this? Through a macro for example?



Thank you!







microsoft-excel






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Jul 16 '15 at 16:39









user470084user470084

21114




21114













  • Is there an Excel add-on for it?

    – Eric Wang
    Jan 17 at 2:38



















  • Is there an Excel add-on for it?

    – Eric Wang
    Jan 17 at 2:38

















Is there an Excel add-on for it?

– Eric Wang
Jan 17 at 2:38





Is there an Excel add-on for it?

– Eric Wang
Jan 17 at 2:38










5 Answers
5






active

oldest

votes


















2














(I'm on mobile so I can't provide a very fleshed out answer right now.)



I have written code to exactly this. My intent was to track all changes on a critical sheet edited by multiple users. If there was a dispute about where data came from, I could review the log. Here are VBA pieces that will come in handy.



Worksheet_Change event will fire every time the worksheet is changed.



If Not Intersect(Target, Range("A1:G12")) Is Nothing will tell you whether or not the cell(s) that changed are within some range you care about.



It's faster to store the values you want to log into an array and them set some range on your log sheet to be equal to that array as opposed to setting each cell on the log sheet individually.



Take a stab and see how far you get. I can be a little more verbose tomorrow.





Next Day Edit



Here's some code that will watch the range A1:G12 on whatever sheet has the code in it. If r is the row that was changed, then the code will copy everything from Ar:Gr into a sheet whose code name is shtLog. (Code name is the name shown in VBA, not the name on the tab you see in Excel.) This should get you moving in the right direction.



Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Integer
Dim c As Integer
Dim arr(1 To 1, 1 To 12)
If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
r = Target.Row
For c = 1 To 12
arr(1, c) = Cells(r, c).Value
Next
With shtLog
.Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
End With
End If
End Sub





share|improve this answer


























  • Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

    – user470084
    Jul 23 '15 at 19:00



















3














The built-in "Track Changes" functionality will likely be far more robust than any change tracking you attempt to implement with macros. Stick with that.






share|improve this answer


























  • the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

    – user470084
    Jul 16 '15 at 16:47



















0














We (disclaimer, I'm the founder) built a audit trail system for Excel (like what Google Docs does, but for Excel). It doesn't require a shared workbook, and the audit trail is saved to a local SQL Database so it can be accessed from any workbook and saved as a separate sheet. Have a look: http://www.officeautomata.com






share|improve this answer

































    0














    Building on Engineer Toast's answer, this logs the time and name of computer making the changes too. Note that the first row in shtLog must have content, otherwise the script will constantly overwrite row 2



    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim r As Integer
    Dim c As Integer
    Dim arr(1 To 1, 1 To 26)

    ' Range to watch for changes
    If Not Intersect(Target, Range("A1:Z200")) Is Nothing Then

    ' Get row that has changed
    r = Target.Row
    For c = 1 To 26
    arr(1, c) = Cells(r, c).Value
    Next

    ' Count number of rows in table
    Dim rowCount As Integer
    rowCount = shtLog.UsedRange.Rows.Count

    ' Set row to use
    Dim rowToUse As Integer
    rowToUse = rowCount + 1

    ' Insert date at the start of the row
    shtLog.Cells(rowToUse, 1).Value = Format(Now(), "dd/mm/yyyy hh:nn AM/PM")

    ' Insert Computer nameto track whose made changes
    shtLog.Cells(rowToUse, 2).Value = Environ("USER")

    ' Insert the new values in to this row
    ' Note the cols have shift by +1 to allow for the date
    With shtLog
    .Range(.Cells(rowToUse, 3), .Cells(rowToUse, 28)) = arr
    End With
    End If
    End Sub





    share|improve this answer































      0














      With the Append feature of Sheetgo you can save keep a historic record of changing variables in Excel. More info in this blogpost: https://blog.sheetgo.com/how-to-solve-with-sheetgo/track-changes-in-excel-files/ (*disclaimer: I am a co-founder of Sheetgo).






      share|improve this answer
























        protected by Community Jan 25 '18 at 23:42



        Thank you for your interest in this question.
        Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



        Would you like to answer one of these unanswered questions instead?














        5 Answers
        5






        active

        oldest

        votes








        5 Answers
        5






        active

        oldest

        votes









        active

        oldest

        votes






        active

        oldest

        votes









        2














        (I'm on mobile so I can't provide a very fleshed out answer right now.)



        I have written code to exactly this. My intent was to track all changes on a critical sheet edited by multiple users. If there was a dispute about where data came from, I could review the log. Here are VBA pieces that will come in handy.



        Worksheet_Change event will fire every time the worksheet is changed.



        If Not Intersect(Target, Range("A1:G12")) Is Nothing will tell you whether or not the cell(s) that changed are within some range you care about.



        It's faster to store the values you want to log into an array and them set some range on your log sheet to be equal to that array as opposed to setting each cell on the log sheet individually.



        Take a stab and see how far you get. I can be a little more verbose tomorrow.





        Next Day Edit



        Here's some code that will watch the range A1:G12 on whatever sheet has the code in it. If r is the row that was changed, then the code will copy everything from Ar:Gr into a sheet whose code name is shtLog. (Code name is the name shown in VBA, not the name on the tab you see in Excel.) This should get you moving in the right direction.



        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim r As Integer
        Dim c As Integer
        Dim arr(1 To 1, 1 To 12)
        If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
        r = Target.Row
        For c = 1 To 12
        arr(1, c) = Cells(r, c).Value
        Next
        With shtLog
        .Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
        End With
        End If
        End Sub





        share|improve this answer


























        • Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

          – user470084
          Jul 23 '15 at 19:00
















        2














        (I'm on mobile so I can't provide a very fleshed out answer right now.)



        I have written code to exactly this. My intent was to track all changes on a critical sheet edited by multiple users. If there was a dispute about where data came from, I could review the log. Here are VBA pieces that will come in handy.



        Worksheet_Change event will fire every time the worksheet is changed.



        If Not Intersect(Target, Range("A1:G12")) Is Nothing will tell you whether or not the cell(s) that changed are within some range you care about.



        It's faster to store the values you want to log into an array and them set some range on your log sheet to be equal to that array as opposed to setting each cell on the log sheet individually.



        Take a stab and see how far you get. I can be a little more verbose tomorrow.





        Next Day Edit



        Here's some code that will watch the range A1:G12 on whatever sheet has the code in it. If r is the row that was changed, then the code will copy everything from Ar:Gr into a sheet whose code name is shtLog. (Code name is the name shown in VBA, not the name on the tab you see in Excel.) This should get you moving in the right direction.



        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim r As Integer
        Dim c As Integer
        Dim arr(1 To 1, 1 To 12)
        If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
        r = Target.Row
        For c = 1 To 12
        arr(1, c) = Cells(r, c).Value
        Next
        With shtLog
        .Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
        End With
        End If
        End Sub





        share|improve this answer


























        • Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

          – user470084
          Jul 23 '15 at 19:00














        2












        2








        2







        (I'm on mobile so I can't provide a very fleshed out answer right now.)



        I have written code to exactly this. My intent was to track all changes on a critical sheet edited by multiple users. If there was a dispute about where data came from, I could review the log. Here are VBA pieces that will come in handy.



        Worksheet_Change event will fire every time the worksheet is changed.



        If Not Intersect(Target, Range("A1:G12")) Is Nothing will tell you whether or not the cell(s) that changed are within some range you care about.



        It's faster to store the values you want to log into an array and them set some range on your log sheet to be equal to that array as opposed to setting each cell on the log sheet individually.



        Take a stab and see how far you get. I can be a little more verbose tomorrow.





        Next Day Edit



        Here's some code that will watch the range A1:G12 on whatever sheet has the code in it. If r is the row that was changed, then the code will copy everything from Ar:Gr into a sheet whose code name is shtLog. (Code name is the name shown in VBA, not the name on the tab you see in Excel.) This should get you moving in the right direction.



        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim r As Integer
        Dim c As Integer
        Dim arr(1 To 1, 1 To 12)
        If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
        r = Target.Row
        For c = 1 To 12
        arr(1, c) = Cells(r, c).Value
        Next
        With shtLog
        .Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
        End With
        End If
        End Sub





        share|improve this answer















        (I'm on mobile so I can't provide a very fleshed out answer right now.)



        I have written code to exactly this. My intent was to track all changes on a critical sheet edited by multiple users. If there was a dispute about where data came from, I could review the log. Here are VBA pieces that will come in handy.



        Worksheet_Change event will fire every time the worksheet is changed.



        If Not Intersect(Target, Range("A1:G12")) Is Nothing will tell you whether or not the cell(s) that changed are within some range you care about.



        It's faster to store the values you want to log into an array and them set some range on your log sheet to be equal to that array as opposed to setting each cell on the log sheet individually.



        Take a stab and see how far you get. I can be a little more verbose tomorrow.





        Next Day Edit



        Here's some code that will watch the range A1:G12 on whatever sheet has the code in it. If r is the row that was changed, then the code will copy everything from Ar:Gr into a sheet whose code name is shtLog. (Code name is the name shown in VBA, not the name on the tab you see in Excel.) This should get you moving in the right direction.



        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim r As Integer
        Dim c As Integer
        Dim arr(1 To 1, 1 To 12)
        If Not Intersect(Target, Range("A1:G12")) Is Nothing Then
        r = Target.Row
        For c = 1 To 12
        arr(1, c) = Cells(r, c).Value
        Next
        With shtLog
        .Range(.Cells(.UsedRange.Rows.Count + 1, 1), .Cells(.UsedRange.Rows.Count + 1, 12)) = arr
        End With
        End If
        End Sub






        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Jul 17 '15 at 13:22

























        answered Jul 17 '15 at 0:47









        Engineer ToastEngineer Toast

        2,9281828




        2,9281828













        • Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

          – user470084
          Jul 23 '15 at 19:00



















        • Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

          – user470084
          Jul 23 '15 at 19:00

















        Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

        – user470084
        Jul 23 '15 at 19:00





        Thank you very much! It does work, however, I have a small problem. When I run the macro I use data from sheet1 and I want to store them in sheet2. So the changes are stored in sheet2, but only the last change, not all previous. However, if change sheet2 to sheet1 in the code which means that I require the data to be stored in sheet1, all changes are regularly stored in sheet1, exactly below the table range that I give as input. Do you have any idea why this might happen?

        – user470084
        Jul 23 '15 at 19:00













        3














        The built-in "Track Changes" functionality will likely be far more robust than any change tracking you attempt to implement with macros. Stick with that.






        share|improve this answer


























        • the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

          – user470084
          Jul 16 '15 at 16:47
















        3














        The built-in "Track Changes" functionality will likely be far more robust than any change tracking you attempt to implement with macros. Stick with that.






        share|improve this answer


























        • the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

          – user470084
          Jul 16 '15 at 16:47














        3












        3








        3







        The built-in "Track Changes" functionality will likely be far more robust than any change tracking you attempt to implement with macros. Stick with that.






        share|improve this answer















        The built-in "Track Changes" functionality will likely be far more robust than any change tracking you attempt to implement with macros. Stick with that.







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Jun 14 '16 at 19:29

























        answered Jul 16 '15 at 16:42









        PointerPointer

        303211




        303211













        • the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

          – user470084
          Jul 16 '15 at 16:47



















        • the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

          – user470084
          Jul 16 '15 at 16:47

















        the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

        – user470084
        Jul 16 '15 at 16:47





        the problem is that the "track changes" will provide a list of history changes which I have very little flexibility to manipulate. I would like for example to present the history in a different way so someone who looks at it can understand the evolution of the values of the cells through time...

        – user470084
        Jul 16 '15 at 16:47











        0














        We (disclaimer, I'm the founder) built a audit trail system for Excel (like what Google Docs does, but for Excel). It doesn't require a shared workbook, and the audit trail is saved to a local SQL Database so it can be accessed from any workbook and saved as a separate sheet. Have a look: http://www.officeautomata.com






        share|improve this answer






























          0














          We (disclaimer, I'm the founder) built a audit trail system for Excel (like what Google Docs does, but for Excel). It doesn't require a shared workbook, and the audit trail is saved to a local SQL Database so it can be accessed from any workbook and saved as a separate sheet. Have a look: http://www.officeautomata.com






          share|improve this answer




























            0












            0








            0







            We (disclaimer, I'm the founder) built a audit trail system for Excel (like what Google Docs does, but for Excel). It doesn't require a shared workbook, and the audit trail is saved to a local SQL Database so it can be accessed from any workbook and saved as a separate sheet. Have a look: http://www.officeautomata.com






            share|improve this answer















            We (disclaimer, I'm the founder) built a audit trail system for Excel (like what Google Docs does, but for Excel). It doesn't require a shared workbook, and the audit trail is saved to a local SQL Database so it can be accessed from any workbook and saved as a separate sheet. Have a look: http://www.officeautomata.com







            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Sep 2 '15 at 22:57

























            answered Sep 2 '15 at 21:54









            Jeremiah JeschkeJeremiah Jeschke

            111




            111























                0














                Building on Engineer Toast's answer, this logs the time and name of computer making the changes too. Note that the first row in shtLog must have content, otherwise the script will constantly overwrite row 2



                Private Sub Worksheet_Change(ByVal Target As Range)
                Dim r As Integer
                Dim c As Integer
                Dim arr(1 To 1, 1 To 26)

                ' Range to watch for changes
                If Not Intersect(Target, Range("A1:Z200")) Is Nothing Then

                ' Get row that has changed
                r = Target.Row
                For c = 1 To 26
                arr(1, c) = Cells(r, c).Value
                Next

                ' Count number of rows in table
                Dim rowCount As Integer
                rowCount = shtLog.UsedRange.Rows.Count

                ' Set row to use
                Dim rowToUse As Integer
                rowToUse = rowCount + 1

                ' Insert date at the start of the row
                shtLog.Cells(rowToUse, 1).Value = Format(Now(), "dd/mm/yyyy hh:nn AM/PM")

                ' Insert Computer nameto track whose made changes
                shtLog.Cells(rowToUse, 2).Value = Environ("USER")

                ' Insert the new values in to this row
                ' Note the cols have shift by +1 to allow for the date
                With shtLog
                .Range(.Cells(rowToUse, 3), .Cells(rowToUse, 28)) = arr
                End With
                End If
                End Sub





                share|improve this answer




























                  0














                  Building on Engineer Toast's answer, this logs the time and name of computer making the changes too. Note that the first row in shtLog must have content, otherwise the script will constantly overwrite row 2



                  Private Sub Worksheet_Change(ByVal Target As Range)
                  Dim r As Integer
                  Dim c As Integer
                  Dim arr(1 To 1, 1 To 26)

                  ' Range to watch for changes
                  If Not Intersect(Target, Range("A1:Z200")) Is Nothing Then

                  ' Get row that has changed
                  r = Target.Row
                  For c = 1 To 26
                  arr(1, c) = Cells(r, c).Value
                  Next

                  ' Count number of rows in table
                  Dim rowCount As Integer
                  rowCount = shtLog.UsedRange.Rows.Count

                  ' Set row to use
                  Dim rowToUse As Integer
                  rowToUse = rowCount + 1

                  ' Insert date at the start of the row
                  shtLog.Cells(rowToUse, 1).Value = Format(Now(), "dd/mm/yyyy hh:nn AM/PM")

                  ' Insert Computer nameto track whose made changes
                  shtLog.Cells(rowToUse, 2).Value = Environ("USER")

                  ' Insert the new values in to this row
                  ' Note the cols have shift by +1 to allow for the date
                  With shtLog
                  .Range(.Cells(rowToUse, 3), .Cells(rowToUse, 28)) = arr
                  End With
                  End If
                  End Sub





                  share|improve this answer


























                    0












                    0








                    0







                    Building on Engineer Toast's answer, this logs the time and name of computer making the changes too. Note that the first row in shtLog must have content, otherwise the script will constantly overwrite row 2



                    Private Sub Worksheet_Change(ByVal Target As Range)
                    Dim r As Integer
                    Dim c As Integer
                    Dim arr(1 To 1, 1 To 26)

                    ' Range to watch for changes
                    If Not Intersect(Target, Range("A1:Z200")) Is Nothing Then

                    ' Get row that has changed
                    r = Target.Row
                    For c = 1 To 26
                    arr(1, c) = Cells(r, c).Value
                    Next

                    ' Count number of rows in table
                    Dim rowCount As Integer
                    rowCount = shtLog.UsedRange.Rows.Count

                    ' Set row to use
                    Dim rowToUse As Integer
                    rowToUse = rowCount + 1

                    ' Insert date at the start of the row
                    shtLog.Cells(rowToUse, 1).Value = Format(Now(), "dd/mm/yyyy hh:nn AM/PM")

                    ' Insert Computer nameto track whose made changes
                    shtLog.Cells(rowToUse, 2).Value = Environ("USER")

                    ' Insert the new values in to this row
                    ' Note the cols have shift by +1 to allow for the date
                    With shtLog
                    .Range(.Cells(rowToUse, 3), .Cells(rowToUse, 28)) = arr
                    End With
                    End If
                    End Sub





                    share|improve this answer













                    Building on Engineer Toast's answer, this logs the time and name of computer making the changes too. Note that the first row in shtLog must have content, otherwise the script will constantly overwrite row 2



                    Private Sub Worksheet_Change(ByVal Target As Range)
                    Dim r As Integer
                    Dim c As Integer
                    Dim arr(1 To 1, 1 To 26)

                    ' Range to watch for changes
                    If Not Intersect(Target, Range("A1:Z200")) Is Nothing Then

                    ' Get row that has changed
                    r = Target.Row
                    For c = 1 To 26
                    arr(1, c) = Cells(r, c).Value
                    Next

                    ' Count number of rows in table
                    Dim rowCount As Integer
                    rowCount = shtLog.UsedRange.Rows.Count

                    ' Set row to use
                    Dim rowToUse As Integer
                    rowToUse = rowCount + 1

                    ' Insert date at the start of the row
                    shtLog.Cells(rowToUse, 1).Value = Format(Now(), "dd/mm/yyyy hh:nn AM/PM")

                    ' Insert Computer nameto track whose made changes
                    shtLog.Cells(rowToUse, 2).Value = Environ("USER")

                    ' Insert the new values in to this row
                    ' Note the cols have shift by +1 to allow for the date
                    With shtLog
                    .Range(.Cells(rowToUse, 3), .Cells(rowToUse, 28)) = arr
                    End With
                    End If
                    End Sub






                    share|improve this answer












                    share|improve this answer



                    share|improve this answer










                    answered Mar 3 at 10:08









                    tim.bakertim.baker

                    125118




                    125118























                        0














                        With the Append feature of Sheetgo you can save keep a historic record of changing variables in Excel. More info in this blogpost: https://blog.sheetgo.com/how-to-solve-with-sheetgo/track-changes-in-excel-files/ (*disclaimer: I am a co-founder of Sheetgo).






                        share|improve this answer






























                          0














                          With the Append feature of Sheetgo you can save keep a historic record of changing variables in Excel. More info in this blogpost: https://blog.sheetgo.com/how-to-solve-with-sheetgo/track-changes-in-excel-files/ (*disclaimer: I am a co-founder of Sheetgo).






                          share|improve this answer




























                            0












                            0








                            0







                            With the Append feature of Sheetgo you can save keep a historic record of changing variables in Excel. More info in this blogpost: https://blog.sheetgo.com/how-to-solve-with-sheetgo/track-changes-in-excel-files/ (*disclaimer: I am a co-founder of Sheetgo).






                            share|improve this answer















                            With the Append feature of Sheetgo you can save keep a historic record of changing variables in Excel. More info in this blogpost: https://blog.sheetgo.com/how-to-solve-with-sheetgo/track-changes-in-excel-files/ (*disclaimer: I am a co-founder of Sheetgo).







                            share|improve this answer














                            share|improve this answer



                            share|improve this answer








                            edited Mar 3 at 15:29









                            Nisse Engström

                            21337




                            21337










                            answered May 3 '17 at 22:26









                            ChadChad

                            1




                            1

















                                protected by Community Jan 25 '18 at 23:42



                                Thank you for your interest in this question.
                                Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).



                                Would you like to answer one of these unanswered questions instead?



                                Popular posts from this blog

                                How do I know what Microsoft account the skydrive app is syncing to?

                                When does type information flow backwards in C++?

                                Grease: Live!