title: VBA paste new values in column B of sheet 1 to last empty cell of B in sheet2
body: <p><strong>Think of my problem like this: cells <code>FS3:FS33</code> show customer receipts for customers in the restaurant seats <code>3 to 33</code> ( those are the only seats ) at the present time. As they leave their receipts leave the cells <code>FS3:FS33</code> and go to the bin. New customers come and go and as they come and go <code>FS3:FS33</code> fills downwards to the last column ( ie there will be no gaps and they will fill from <code>FS3</code> down ). Each receipt is unique and needs to be recorded and kept on the last empty row of another column on a different sheet in C:C.</strong> </p>
  
  <p><strong>This Q has been answered but I have one final problem with it not updating - see below</strong></p>
  
  <p>the combination of this sub in a module</p>
  
  <pre><code>Sub hithere3()
  Dim Rng As Range
  Dim Unique As Boolean
  
  For Each Rng In Worksheets("Sheet8").Range("FS3:FS30") 'for each cell     in     your B1 to B30 range, sheet1
  Unique = True 'we'll assume it's unique
  Lastunique = Worksheets("TRADES").Range("C:C").Find("*",     SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
  For i = 3 To Lastunique 'for each cell in the unique ID cache
      If Rng.Value = Worksheets("TRADES").Cells(i, 3).Value Then 'we       check    if it is equal
          Unique = False 'if yes, it is not unique
      End If
  Next
  If Unique Then Worksheets("TRADES").Cells(Lastunique + 1, 3) = Rng 'adds    if it is unique
  Next
  End Sub
  </code></pre>
  
  <p>with the loop check in a worksheet change events</p>
  
  <pre><code>Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  If Intersect(Target, Range("FS3:FS33")) Is Nothing Then
  'Do nothing '
  Else
  Call hithere3
  End If
  End Sub
  </code></pre>
  
  <p>works except it only updates when I select one of the cells in FS3:FS33</p>
  
  <p>Can anyone suggest how this can be overcome?</p>
  
  <p>SOLUTION </p>
  
  <pre><code>Private Sub Worksheet_calculate()
  If Range("FS3:FS33") Is Nothing Then
  'Do nothing'
  Else
   Call hithere3
  End If
  End Sub
  </code></pre>