我刚刚学习了VB
中的基础知识,我想知道是否有人可以帮我编写Excel工作表以使用行和列值定位单元格并增加定位单元格的“值”(包含的数字)在按钮单击中按特定整数(比如+1)放置。我查看了常见问题解答无济于事。如果您觉得我错过了它,请提供给我链接,以便我可以了解它。我已经在VBA
中学习了编码的基础知识,但如果你能详细说明高级代码,我们将非常感激。
为了进一步解释,1将范围指定为5x5 cells
(5个细胞长,5个细胞宽,从细胞A1开始)。行号将在单元A7
中输入为“4”,列号在A8
中输入为“3”。单击该按钮后,将找到该单元格,它将为cell = + 1
添加一个值。作为输出,单元格“C4”中应该包含数字“1”,因为它是列号和行号相交的。
此外,列#单元格中的值将传输到行#单元格,这意味着单元格A7
的值将为“3”,A8
将为“空白”。这是因为我将使用列#cell中的值作为下一个输入的行#cell值。
任何反应,评论,答案或建议都将不胜感激。感谢您抽出时间阅读。 :)(如果我不能提供粗略的图片示例,我很抱歉,因为该网站不允许我发布图片。)
答案 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
我相信你可以做其余的事情......