アプリ版:「スタンプのみでお礼する」機能のリリースについて

商品 4月 5月 6月 7月 8月 9月 10月 11月
りんご 51,900 37,350 34,860 8月 34,860 34,860 ---    2,790
みかん 156,423 156,423 156,423 9月 156,423 156,423 ---   156,423
バナナ 86,741 77,041 75,381 10月 75,381 75,381 ---   97,110

isNumeric() = True then          ↑ここに数値以外が場合    ↑
どのような条件を使用した実行できますか。
わかる方おしえていただけませんでしょうか。    

Sub test_14()
Dim i As Long, j As Long
Dim x1 As Variant, x2 As Variant
Dim ans1 As Variant, ans2 As Variant, ans3 As Variant
Dim AR1, Ar2 As Range

Set AR1 = Range("d3", "D" & Rows.Count).End(xlUp)

x1 = Range("d3:i5").Value
ReDim ans1(1 To UBound(x1), 1 To 1)
For i = LBound(x1) To UBound(x1)
ans1(i, 1) = (x1(i, 1) + x1(i, 2))
Next i

With Range("j3").Resize(UBound(x1))
.Value = ans1
.NumberFormatLocal = "#,##0"
End With
'
x2 = Range("d3", Range("d" & Rows.Count).End(xlUp)).Resize(, 6).Value
ReDim ans2(1 To 1, 1 To UBound(x2, 2))
ReDim ans3(1 To 1, 1 To UBound(x2, 2))
For i = LBound(x2, 2) To UBound(x2, 2)
For j = LBound(x2) To UBound(x2)
ans2(1, i) = ans2(1, i) + x2(j, i)
ans3(1, i) = ans3(1, i) + x2(j, i)
Next j
ans3(1, i) = ans3(1, i) / UBound(x2)
Next i

With Range("d7").Resize(1, UBound(x2, 2))
.Value = ans2
.NumberFormatLocal = "#,##0"
End With
AR1.Offset(10).Resize(1, UBound(x2, 2)) = ans3

End Sub

「IsNumeric 配列条件」の質問画像

質問者からの補足コメント

  • うーん・・・

    すこしわかりにくかもしれないので
    数値のみ合計する
    それ以外は
    なにもしない

      補足日時:2019/06/02 22:32

A 回答 (1件)

For j = LBound(x2) To UBound(x2)


ans2(1, i) = ans2(1, i) + x2(j, i)
ans3(1, i) = ans3(1, i) + x2(j, i)
Next j



For j = LBound(x2) To UBound(x2)
If IsNumeric(x2(j,i)) Then
ans2(1, i) = ans2(1, i) + x2(j, i)
ans3(1, i) = ans3(1, i) + x2(j, i)
End If
Next j

みたいな事?(ちょっとコードが良く理解できなかったですし検証してませんけど)
    • good
    • 0
この回答へのお礼

ありがとう

これです
これがやりたかった
sNumeric(x2(j, i)) ここまて゛
試さなかった。
有難うございました。

お礼日時:2019/06/03 20:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!