Excel ワークブックに 2 つのフィールドがあります。
1. MED - 範囲("J13:K13")
式: =IF(D5=1,"X","")
2. NON-MED - 範囲("L13:M13")
式: =IF(D5=2,"X","")
以下のコードを使用すると、フィールドは常に空ではないため、「1」の値が保存されます。
'1. Med
If Not IsEmpty(range("J13:K13").value) Then
Worksheets("FeedSamples").range("AK" & newRow).value = 1
Else
Worksheets("FeedSamples").range("AK" & newRow).value = 0
End If
'2. Non-Med
If Not IsEmpty(range("L13:M13").value) Then
Worksheets("FeedSamples").range("AL" & newRow).value = 1
Else
Worksheets("FeedSamples").range("AL" & newRow).value = 0
End If
IF ステートメントで次を使用しようとしましたが、カウントは常に「1」です。
'1. Med
If WorksheetFunction.CountA(range("J13:K13")) = 0 Then
誰にもアイデアはありますか?フィールドの値に「X」がある場合 (または長さのカウントが 1)、別のワークシートに「1」を保存する必要があります。フィールドが空 (または長さのカウントが 0) の場合、他のワークシートに「0」を保存する必要があります。
IsEmpty() のチェックが正しく機能しない理由がわかりません。