La parte que está comentada es la supuesta búsqueda pero mal hecha.
La parte de la definición de la matriz cuadros correponde a los elementos que se encuentran en cada cuadro de 3x3.
Alguna ayuda?
Código
Dim cuadros(9, 9) As Integer Private Sub Cmd_Comprobar_Click() For i = 0 To 80 fila = i \ 9 columna = i Mod 9 For j = fila * 9 To (fila * 9) + 8 If i <> j Then If Command1(j).Caption = Command1(i).Caption Then Command1(i).FontBold = True End If End If Next For j = columna To 72 + columna Step 9 If i <> j Then If Command1(j).Caption = Command1(i).Caption Then Command1(i).FontBold = True End If End If Next 'For k = i\3 To i\3 ' For j = 0 To 8 ' If cuadros(k, j) <> cuadros(fila, columna) Then ' If (Command1(cuadros(k, j)).Caption = Command1(i).Caption) And (Command1(cuadros(k, j)).Caption <> "") Then ' Command1(cuadros(k, j)).FontBold = True ' End If ' End If 'Next 'Next Next End Sub Private Sub Cmd_LimpiarN_Click() For i = 0 To 80 Command1(i).FontBold = False Next End Sub Private Sub Command1_Click(Index As Integer) Dim valor As Integer Command1(Index).FontBold = False valor = Val(InputBox("Ingresa numero", "Sudoku", "")) If valor > 0 And valor < 10 Then Command1(Index).Caption = valor Else Command1(Index).Caption = "" End If End Sub Private Sub Form_Load() Dim i As Integer For i = 0 To 80 Command1(i).Caption = "" Next Cmd_Comprobar.Caption = "Comprobar" Cmd_LimpiarN.Caption = "Limpiar comprobación" cuadros(0, 0) = 0 cuadros(0, 1) = 1 cuadros(0, 2) = 2 cuadros(0, 3) = 9 cuadros(0, 4) = 10 cuadros(0, 5) = 11 cuadros(0, 6) = 18 cuadros(0, 7) = 19 cuadros(0, 8) = 20 cuadros(1, 0) = 3 cuadros(1, 1) = 4 cuadros(1, 2) = 5 cuadros(1, 3) = 12 cuadros(1, 4) = 13 cuadros(1, 5) = 14 cuadros(1, 6) = 21 cuadros(1, 7) = 22 cuadros(1, 8) = 23 cuadros(2, 0) = 6 cuadros(2, 1) = 7 cuadros(2, 2) = 8 cuadros(2, 3) = 15 cuadros(2, 4) = 16 cuadros(2, 5) = 17 cuadros(2, 6) = 24 cuadros(2, 7) = 25 cuadros(2, 8) = 26 cuadros(3, 0) = 27 cuadros(3, 1) = 28 cuadros(3, 2) = 29 cuadros(3, 3) = 36 cuadros(3, 4) = 37 cuadros(3, 5) = 38 cuadros(3, 6) = 45 cuadros(3, 7) = 46 cuadros(3, 8) = 47 cuadros(4, 0) = 30 cuadros(4, 1) = 31 cuadros(4, 2) = 32 cuadros(4, 3) = 39 cuadros(4, 4) = 40 cuadros(4, 5) = 41 cuadros(4, 6) = 48 cuadros(4, 7) = 49 cuadros(4, 8) = 50 cuadros(5, 0) = 33 cuadros(5, 1) = 34 cuadros(5, 2) = 35 cuadros(5, 3) = 42 cuadros(5, 4) = 43 cuadros(5, 5) = 44 cuadros(5, 6) = 51 cuadros(5, 7) = 52 cuadros(5, 8) = 53 cuadros(6, 0) = 54 cuadros(6, 1) = 55 cuadros(6, 2) = 56 cuadros(6, 3) = 63 cuadros(6, 4) = 64 cuadros(6, 5) = 65 cuadros(6, 6) = 72 cuadros(6, 7) = 73 cuadros(6, 8) = 74 cuadros(7, 0) = 57 cuadros(7, 1) = 58 cuadros(7, 2) = 59 cuadros(7, 3) = 66 cuadros(7, 4) = 67 cuadros(7, 5) = 68 cuadros(7, 6) = 75 cuadros(7, 7) = 76 cuadros(7, 8) = 77 cuadros(8, 0) = 60 cuadros(8, 1) = 61 cuadros(8, 2) = 62 cuadros(8, 3) = 69 cuadros(8, 4) = 70 cuadros(8, 5) = 71 cuadros(8, 6) = 78 cuadros(8, 7) = 79 cuadros(8, 8) = 80 End Sub