在Excel中为电子表格写一个macros

我需要编写一个电子表格,当你按下一个button时,会添加一行数据,并要求计算所需的参数,但是我似乎无法正确使用它,真令人沮丧,任何帮助都不胜感激。 我在excel中是一个完整的macros,并且只对我的uni做了非常基本的matlab编程。 我的脚本到目前为止如下:

Sub AddPosTol() ' ' AddPosTol Macro ' Dim rngSeek As Range Set rngSeek = Range("A1").End(xlDown).Offset(1, 0) With rngSeek.Offset(0, 1) With .Font .Name = "Solid Edge ANSI1 Symbols" .Size = 11 End With End With Range(rngSeek).Offset(0, 1) = "l" Range(rngSeek).Offset(0, 3) = "=RC[-1]" Range(rngSeek).Offset(0, 4) = "0" With rngSeek.Offset(1, 1) With .Font .Bold = True End With End With Range(rngSeek).Offset(1, 1) = "X value" Range(rngSeek).Offset(2, 1) = "Y Value" Range(rngSeek).Offset(0, 4) = "=2*SQRT((R[1]C[-3]-R[1]C)^2+(R[2]C[-3]-R[2]C)^2)" Range(rngSeek).Offset(0, 5) = "=2*SQRT((R4C3-R[1]C)^2+(R5C3-R[2]C)^2)" Range(rngSeek).Offset(0, 6) = "=2*SQRT((R[1]C[-3]-R[1]C)^2+(R[2]C[-3]-R[2]C)^2)" Range(rngSeek).Offset(0, 7) = "=2*SQRT((R[1]C[-3]-R[1]C)^2+(R[2]C[-3]-R[2]C)^2)" Range(rngSee).Offset(0, 8) = "=2*SQRT((R4C3-R[1]C)^2+(R5C3-R[2]C)^2)" Range(rngSeek).Offset(0, 2) = (InputBox("Insert Positional Tolerance Diametre")) Range(rngSeek).Offset(1, 2) = (InputBox("Insert X value on drawing")) Range(rngSeek).Offset(2, 2) = (InputBox("Insert Y value on drawing")) End Sub 

您已经将rngSeek定义为一个范围,然后尝试使用工作表的Range()方法使用该范围定义。

所有行你有Range(rngSeek).Offset(...你可以用rngSeek.Offset(...

(你的公式之一也引用了错误的单元格;-)