1
強制的な値を1つずつ取り出すことを試みている2つのシートがあります。 Force Cで始まり、すべての値をカウントダウンして取り込んでいるセルについて、C列を検索しています。任意の文字列セルをスキップしたり、反復をジャンプするVBA一致/インデックス関数
私が取り組んでいる問題は、現在取り込んでいるシートには、セルの中央にランダムな文字列値があることです。これはFemapというプログラムによって生成され、テキストを制御することはできません。 ここから私が引き出しているものの例です。
ELEMENT-ID FORCE-X
38789 1.06E+00
38795 2.49E+00
38801 2.30E+00
38807 2.21E+00
38813 2.15E+00
38819 1.90E+00
38825 1.57E+00
38827 -8.43E-01
38833 3.92E+00
38839 1.51E+01
38845 1.68E+01
38851 1.19E+01
38857 9.22E+00
38863 2.84E+00
**CBUSH-CRITS JULY
CONSTRAINT SET
SUBCASE 1
F O**
ELEMENT-ID FORCE-X
39721 8.80E+00
39727 6.02E+00
39733 1.44E+00
問題の領域は太字で示しています。私のセルは、7月、Constraint Setなどの値を持つことになります。どのような文字列でセルをスキップして、インデックス検索がForce-Xの1回の反復からForce-Xの次の反復までの値を取得するだけです。
Dim mrsheet As Worksheet
Set mrsheet = ThisWorkbook.Sheets("PPO")
'''''''''''''''''''''''''''''''''''''
n = 2
Count = 1
m = 1
numcbush = 138
i = 1
While m <= numcbush
If Sheets("F06").Cells(i, 2) = mrsheet.Cells(n, 1) Then
mrsheet.Cells(n, 12) = Application.WorksheetFunction.Index(Sheets("F06").Range("C:C"), Application.WorksheetFunction.Match("FORCE-X", Sheets("F06").Range("C:C"), 0) + Count)
m = m + 1
n = n + 1
Count = Count + 1
i = i + 1
Else
i = i + 1
End If
Wend
これがうまくいく場合、答えを受け入れてください。申し訳ありませんが、あなたがこれを知っている場合は、新しいユーザーの外観を持っています。 :) – PGCodeRider