使用行和列值查找单元格,并在按钮单击时将单元格的值增加1

时间:2013-06-15 04:37:44

标签: vba excel-vba excel

我刚刚学习了VB中的基础知识,我想知道是否有人可以帮我编写Excel工作表以使用行和列值定位单元格并增加定位单元格的“值”(包含的数字)在按钮单击中按特定整数(比如+1)放置。我查看了常见问题解答无济于事。如果您觉得我错过了它,请提供给我链接,以便我可以了解它。我已经在VBA中学习了编码的基础知识,但如果你能详细说明高级代码,我们将非常感激。

为了进一步解释,1将范围指定为5x5 cells(5个细胞长,5个细胞宽,从细胞A1开始)。行号将在单元A7中输入为“4”,列号在A8中输入为“3”。单击该按钮后,将找到该单元格,它将为cell = + 1添加一个值。作为输出,单元格“C4”中应该包含数字“1”,因为它是列号和行号相交的。

此外,列#单元格中的值将传输到行#单元格,这意味着单元格A7的值将为“3”,A8将为“空白”。这是因为我将使用列#cell中的值作为下一个输入的行#cell值。

任何反应,评论,答案或建议都将不胜感激。感谢您抽出时间阅读。 :)(如果我不能提供粗略的图片示例,我很抱歉,因为该网站不允许我发布图片。)

2 个答案:

答案 0 :(得分:0)

Worksheets("wksht").Range("$a$n").Value = Worksheets("wksht").Range("$a$n").Value + m

其中wksht是工作表,a是所需的行,n是所需的列,m是所需的增量因子。我应该注意到你要检查值以确保它是一个数字,你永远不能相信最终用户做出正确的输入。

在此处找到:http://www.access-programmers.co.uk/forums/showthread.php?t=165438

答案 1 :(得分:0)

我有这个给你..在你的按钮

中这样做
Sub SetAddr()
Dim x, y As Integer
Dim sCell As String    

x = ActiveSheet.Range("A8").Value
y = ActiveSheet.Range("A7").Value
sCell = StrRange(y, x)

'assumed the cell is blank
If IsEmpty(ActiveSheet.Range(sCell)) Then
    ActiveSheet.Range(sCell).Value = ActiveSheet.Range(sCell).Value + 1   
End If

End Sub

Function StrRange(ByVal nRow As Single, ByVal nCol As Single) As String
Dim sC As String
Dim nC, nRest, nDivRes As Integer

sC = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
nC = Len(sC)

nRest = nCol Mod nC
nDivRes = (nCol - nRest) / nC

If nDivRes > 0 Then StrRange = Mid(sC, nDivRes, 1)
StrRange = StrRange & Mid(sC, nRest, 1) & Format(nRow)
End Function

我相信你可以做其余的事情......