1

Например, если A1 содержит 30, а в A2 я пишу =A1-6 тогда я получу 27 в A2, и если я щелкну маленьким черным квадратом в нижнем правом углу A2 и перетащу его вниз, я получу столбец, который выглядит как это:

30
27
24
21
18
15
12

И так далее.

Если я попытаюсь сделать это с формулой нескольких переменных, то это не сработает. Например, если я вместо этого наберу A2 = (A1 - B1)*C1 и перетащу его таким же образом, то следующая ячейка будет иметь формулу = (A2 - B2)*C2 . Но я только хочу, чтобы A # был увеличен.

Как мне это сделать?

2 ответа2

1

Знак «$» перед буквой (столбцом) или цифрой (строкой) не позволяет автоматически увеличивать его. «$ a $ 2» никогда не будет увеличиваться вообще. «$ 2» столбец только увеличивается. «$ a2» строка только увеличивает

type in A2 = (A1 - B1)*C1
 I only want the A# to get incremented
        a2 = ($a1-$b$1)*$c$1
0

Вот макрос для вас:

REM  *****  BASIC  *****

Sub Main


End Sub


sub arg
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$A$4"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "StringName"
args2(0).Value = "30"


dispatcher.executeDispatch(document, ".uno:EnterString", "", 0, args2())
dim args4(0) as new com.sun.star.beans.PropertyValue

for a=0 to 100
args1(0).Name="ToPoint"
args1(0).Value="a"+(a+4)

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:JumpToNextCell", "", 0, Array())

rem ----------------------------------------------------------------------

args4(0).Name = "StringName"
args4(0).Value = "="&30-(3*a)


dispatcher.executeDispatch(document, ".uno:EnterString", "", 0, args4())
next a
rem ----------------------------------------------------------------------

end sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .