オープンオフィスで複雑な計算をドラッグダウンするにはどうすればよいですか。


1

たとえば、A1に30が含まれ、A2に書き込むと、A2に=A1-627が表示され、A2の右下隅にある小さな黒いスクワーをクリックして下にドラッグすると、次のような列が表示されます。

30
27
24
21
18
15
12

等々。

ただし、複数の変数の式でこれを行おうとすると、うまくいきません。たとえば、代わりにA2 = (A1 - B1)*C1を入力し、同じ方法で下にドラッグすると、次のセルに数式が表示され= (A2 - B2)*C2ます。しかし、私はA#をインクリメントしたいだけです。

どうすればいいですか?


1
文字(列)または数字(行)の前の「$」は、自動インクリメントを防ぎます。「$ a $ 2」はまったく増加しません。「a $ 2」列は増分するだけです。「$ a2」行は増分のみ
サイバーナード

回答:


1

文字(列)または数字(行)の前の「$」は、自動インクリメントを防ぎます。「$ a $ 2」はまったく増加しません。「a $ 2」列は増分するだけです。「$ a2」行は増分のみ

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

ありがとう。これは動作します。A1に日付があり、列内の後続の各セルを1か月ずつ増分したい場合はどうすればよいですか?
デビッド

= A8 + DAYSINMONTH(A8)A8の最初の日付でセルを置き換え、次のセルまたはこの例ではA9に数式を配置します。
サイバーナード

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

私は彼らがそれをどうやってやったのか分かりませんが、誰かがなんとかVBAよりも悪い言語を作ることができました。
ta.speot.is

@ ta.speot.isひどいプログラミング言語の作成に成功することに同意する必要があります。
サイバーナード
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.