これは初めてのフォーラムです。私は主にExcel VBAの初心者のプログラマーでした。翻訳された情報の効率または正確さを改善するための通常は単純なコードです。ループ内検索SumIFS
現在、私はSumIFS式でエラーが発生しているプロジェクトに直面しています。
データベースシートは、大量の情報を含むシートです。sumifsの目的は、各週を対応する名前とIDに合計することです。
データベースはMS Accessにもリンクされているため、すべてのアップデートで動的なままです。列F
xxはここセル行である - 列B 名 - - 列C ワーク - 列D 期間ここで
は
SUMIFSに重要IDでデータベース内のいくつかのフィールドであります数式が入力されます。 LRが最後の行です(これは、メインシートにもピリオドが配置される場所です)。
この式を現在の週までシート全体にドラッグする必要があります。したがって、自動入力のプロパティも見ています。その行でロックする試みを説明します
以下は、問題のコードです。
With Sheets(CurrSheet).Range(UppLimit, BtmLimit) _
Set C = .Find("Actual", LookIn:=xlValues)
If Not C Is Nothing Then
firstAddress = C.Address
Do
xx = C.Offset(0, 2).Row
MsgBox xx
C.Offset(0, 2).Activate
activecell.formula= "SUMIFS(Database!$C:$C,Database!$F:$F,'2'!Range(LR,i),Database!$B:$B,'2'!Range(xx,1),Database!$C:$C,'2'!Range(xx,3),Database!$D:$D,'2'!Range($C$1)""
i = i + 1
Set C = .FindNext(C)
If C Is Nothing Then
GoTo DoneFinding
End If
Loop While Not C Is Nothing And C.Address <> firstAddress
End If
DoneFinding:
End With
のスクリーンショットは、あなたがこの 'データベースのように定義する必要があり – shakespeare
を助けるかもしれない$ F:$ F、 "&ワークシート(" 2 ").cells(lr、1).address&"、Database ... "'入力したときと同じように数式が表示されます –