|
发表于 2014-2-5 14:38
|
显示全部楼层
本楼为最佳答案
- Sub test() 'by kagawa
- [f7].Select '代码从F7单元格开始计算 这个可以自己修改起始位置
- Do
- a = ActiveCell.Offset(, i * 7).Resize(10, 6)
- If a(5, 4) = 0 Then '没有中间短横的 可能是 0,1,7
- If a(1, 4) = 0 Then '没有上面一横的 是1
- t = 1
- Else
- If a(10, 4) = 0 Then '没有下面一横的 是7
- t = 7
- Else '上下都有一横的 是0
- t = 0
- End If
- End If
- Else '有中间短横的可能是 2.3,4,5,6,8,9
- If a(1, 4) = 0 Then '没有上面一横的 是4
- t = 4
- ElseIf a(10, 4) = 0 Then '没有下面一横的 是9
- t = 9
- Else
- If a(8, 6) = 0 Then '没有右下竖线的 是2
- t = 2
- Else '有右下竖线的 可能是3,5,6,8
- If a(8, 1) = 0 Then '没有左下竖线的 可能是3,5
- If a(3, 6) = 0 Then '没有右上竖线的 是5
- t = 5
- Else '有右上竖线的 是3
- t = 3
- End If
- Else '有左下竖线的 可能是6,8
- If a(3, 6) = 0 Then '没有右上竖线的 是6
- t = 6
- Else '有右上竖线的 是8
- t = 8
- End If
- End If
- End If
- End If
- End If
- s = s & t
- i = i + 1
- Loop Until Application.Sum(ActiveCell.Offset(, i * 7).Resize(10, 6)) = 0
- MsgBox s
- End Sub
复制代码 |
评分
-
查看全部评分
|