- ベストアンサー
【エクセル】数値の一番右を奇数として、奇数と偶数位置に分類したい
ある数値(677001)の一番右(1)を奇数として、すべての数字を奇数位置と偶数位置に分類し、奇数位置の数字を3倍して合計を出したいのですが。ある数値は、毎回桁数が異なります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
奇数位置とか偶数位置とか考えるから判らなくなるわけで、素直に 一の位と百の位と万の位と…と取り出していくと思えばたいしたこ とないですね。 一の位: =mod(x,10) 百の位: =mod(int(x/100),10) 万の位: =mod(int(x/10000),10) あとは好きなように加工して合計して下さい。ちなみにExcelの有効 桁は15桁くらいしかないので、延々と桁が増えてく心配はないです。
その他の回答 (2)
noname#204879
回答No.3
「位置に分類」の意味が分からないけど、すべての奇数の和の3倍を出せばよいのなら、 {=SUM(list*MOD(list,2))*3} (配列数式) でOKかと。 それとも奇数の1の位の総和の3倍ですか?それなら {=SUM(MOD(list*MOD(list,2),10))*3} (配列数式) でOKかと。
- o_chi_chi
- ベストアンサー率45% (131/287)
回答No.2
マクロで。 >奇数位置の数字を3倍して の部分は 奇数位置の数字をそれぞれ3倍して と解釈しました。 --- Function m(d As String) As Long Dim i As Long Dim s As Long s = 0 For i = Len(d) To 1 Step -2 s = s + CLng(Mid$(d, i, 1)) * 3& Next m = s End Function
お礼
なるほど、そういう考え方でやる方法もありますね。 ありがとうございました。