[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ユーザー定義関数』(らくしゅん)
エクセル2013で色がついたセルを数えるユーザー定義関数と色のついたセルの
数字を合計するユーザー定義関数を使用していました。
今回パソコンを新調してエクセル2016になりましたところ、その関数は一旦は正常な値を返すのですが、その数式をコピー貼り付けすると、コピー元のセル
が#N/Aになってしまいます。
エラーのセルをダブルクリックすると元に戻ります。
検索範囲に空白はありません。
何かこれに対する対策はありますでしょうか?
ユーザー定義関数はこのような記述です。
数を数えるもの
Function ColorCount(R1 As Range, C As Range)
Dim r As Range
Application.Volatile ColorCount = 0
For Each r In R1 If r.Interior.Color = C.Interior.Color Then ColorCount = ColorCount + 1 End If Next r
合計するもの
Function ColorSum(R1 As Range, C As Range)
Dim r As Range
Application.Volatile ColorSum = 0 For Each r In R1 If r.Interior.Color = C.Interior.Color Then ColorSum = ColorSum + r.Value End If Next r
End Function
< 使用 Excel:Excel2016、使用 OS:Windows10 >
あと何かありましたら、アドバイスお願いします。
(らくしゅん) 2017/03/23(木) 09:51
貼り付け元と貼り付け先、対象範囲のレイアウトやコピペの方法をもう少し詳しく教えてもらえますか。
(名無し) 2017/03/23(木) 11:05
レイアウトとしては、簡単に言えば A列に名前、B列に数字があり、例えば1と3との行に
色がつけてあります。あとA5にも同じ色が付けてあります。
B5に =colorsum(b$1:b$4,$a$5)という計算式がいれてあります。入れた時は正常な値(400)を返します。
次に、b5で右クリックでコピー選択 c5で右クリックで数式を貼り付けます。
すると、b5が#N/Aになります。
このような説明でよろしいでしょうか?
A B C
1 田中 100 500
2 佐藤 200 600
3 伊藤 300 700
4 安藤 400 800
5 色付セル計 #N/A 1200
最悪、最後の最後にエラーのセルをすべてダブルクリックすれば、なんとかなるのですが。。。
納得いかないなぁと思います。よろしくお願いします。
(らくしゅん) 2017/03/26(日) 22:47
不思議ですねぇ。
xl2016は持っていないのですが、xl2010、xl2013 でやると、全くそのようなことにはなりません。
そもそも、この処理に右クリック操作は(私は)やりませんねぇ。 B5 を C5 にフィルコピーします。あるいは、B5 で Ctrl/c-->C5 でCtrl/v。
で、右クリック操作を(生まれて初めて)やってみました。
C5 を選択して右クリックして、貼付け(P)あるいは数式(F)にマウスを当てた瞬間に、『C5』が #N/A表示されますが クリックして実行すると、正しく、式が入って結果が出ています。
( β) 2017/03/27(月) 10:41
別のマクロやユーザー関数が邪魔しているんじゃないでしょうか?
Application.Calculation = xlCalculationManualを記述していたりとかで計算が手動になっていたりとか。
β氏へ
そういう書き方は右クリックで操作している方を馬鹿にしているように見えますので控えられては?本筋にも関係ありませんし。
(名無し) 2017/03/27(月) 10:45
名無しさん
表現がまずかったですね。反省。
ただ、いいわるいは別にして、ある数式を連続したセルにコピーするときには、私はフィルコピーを使いますね。
(β) 2017/03/27(月) 11:04
右クリックに関しては、実は連続したセルにコピーではないんです。説明を簡単にしようと思い
連続セルにしてしまいました。すみません。
試しにフィルコピーしてみました所、上手くいきました!
さらに、コピー貼り付けを上のメニューで選んでやってみましたら、
飛んだセルでも何事もなく上手くいきました。
コピーか貼り付けに問題があるのかもしれないと思い色々やってみました所
コピーは右クリックで選び、貼り付けは上のメニューで実行すると正常に動きました。
貼り付けに何かあるのかもしれないです。
別のマクロやユーザー関数については、マクロはそれだけしか使ってないので、違うのかなと
思ってます。
色々研究してみようと思います。本当にありがとうございました。
(らくしゅん) 2017/03/27(月) 12:57
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.