| Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) | 
 |    Dim sheet As Worksheet | 
 |    If g_gameEnded = True Then | 
 |     Exit Sub | 
 |    End If | 
 |     | 
 |    Set sheet = ThisWorkbook.ActiveSheet | 
 |    If g_Ships Is Nothing Then Code.AddShips Battleship.Range(board1) | 
 |    If Collide(Target, Battleship.Range(board1)) Then | 
 |     If Target.Borders(xlDiagonalUp).Weight <> xlMedium Then | 
 |          SetHit Target | 
 |          Dim Ship | 
 |          Dim isHit As Boolean | 
 |          isHit = False | 
 |          For Each Ship In g_Ships | 
 |             If Ship.isHit(Target.Cells(1, 1), True) Then | 
 |                 If CheckWinner(g_Ships) Then | 
 |                     MsgBox "You win!", vbOKOnly + vbExclamation, "Battleships" | 
 |                     g_gameEnded = True | 
 |                     Cancel = True | 
 |                     Exit Sub | 
 |                 End If | 
 |                 isHit = True | 
 |                 Exit For | 
 |             End If | 
 |          Next | 
 |          If isHit = False Then | 
 |             Unprotect | 
 |             Battleship.Cells(g_logRow, 2).value = "You get a miss on " & Target.Address | 
 |             Battleship.Names("PlayerMisses").RefersToRange.value = Battleship.Names("PlayerMisses").RefersToRange.value + 1 | 
 | 			g_logRow = g_logRow + 1 | 
 |             Protect "" | 
 |          End If | 
 |          ComputerPlay.Move | 
 |           | 
 |     End If | 
 |    End If | 
 |    Cancel = True | 
 | End Sub | 
 | Private Sub Worksheet_SelectionChange(ByVal Target As Range) | 
 |     Target.Cells(1, 1).Select | 
 | End Sub |