[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『UFClr1228の不具合』(matsudesk)
UFClr1228のアドインを有効にしていると、セルの結合を右クリックでセル書式設定の配置で結合を行うとExcelの動作が停止する。
メニューバーのホームの結合のアイコンで実施すと問題はありません。
原因は解決方法は?
< 使用 Excel:Excel2013、使用 OS:Windows8 >
UFClr1228 の中では何もややこしい事はしていないと思うのですが、
どうも Windows7 以降、Excel2010 以降、 VBAのバージョン7から問題が発生するようです。
[ツール]メニュー→[参照設定] で Visual Basic For Application のバージョンを変えてみようと思ったのですが、
バージョンを切り替えられないですね、確かに自分自身だし。
はて困りました、どなたかアドバイスをおねがいします。
Option Explicit
Sub Auto_Open()
' 2004/03/22 sm,cv のInteger 型を Variant 型に変更
' 2013/12/28 [F9]で再計算させるためApplication.Volatile を追加
Dim m As Integer, mc As Integer
mc = MenuBars(xlWorksheet).Menus.Count For m = 1 To mc If MenuBars(xlWorksheet).Menus(m).Caption = "Clr" Then Exit Sub End If Next m MenuBars(xlWorksheet).Menus.Add Caption:="Clr" MenuBars(xlWorksheet).Menus("Clr").MenuItems.Add Caption:="再計算", OnAction:="USClrReCalc" End Sub
- - - - - 省略 - - - - -
Public Function UFClrSumfc(adrs, clr)
' 特定色の文字色の合計
Dim sm As Variant, cv As Variant, fci As Integer, ad As Range
sm = 0 Application.Volatile For Each ad In adrs fci = ad.Font.ColorIndex cv = ad.Value If fci = clr Then sm = sm + cv End If Next UFClrSumfc = sm End Function
Public Function UFClrCntfcx(adrs)
' 色のついた文字の数
Dim sm As Variant, cv As Variant, fci As Integer, ad As Range
sm = 0 Application.Volatile For Each ad In adrs fci = ad.Font.ColorIndex If fci <> -4105 Then sm = sm + 1 End If Next UFClrCntfcx = sm End Function
Public Function UFClrfc(adrs) Dim ad As Range Application.Volatile UFClrfc = adrs.Font.ColorIndex End Function Public Function UFClrcc(adrs) Dim ad As Range Application.Volatile UFClrcc = adrs.Interior.ColorIndex End Function
Public Sub USClrReCalc() Application.CalculateFull
End Sub
(kazu) 2014/04/05(土) 01:20
だからどうなのか、よくわかりませんが ↓のページはご覧になられましたか? http://daigorosan.blog129.fc2.com/blog-entry-131.html 状況は違う様ですが。。。
こちらの試行としては
Windows7、Excel2010 UFClrSumfc のコードだけ入れて C1セルに =UFClrSumfc(A1:A5,1) の式を入力。
セルを結合すると、動作停止しますが
「Application.Volatile」をコメントアウトして 上書き保存・一旦終了・再度立ち上げ・再計算後 セルの結合をしても、動作停止しませんでした。
「On Error Resume Next」を入れておいても 再計算後は セルの結合をすると動作停止しましたので また違った状況の様にも思えますが。
動作報告まで。 (HANA) 2014/04/05(土) 10:49
[HANA] さんヒントをありがとうございます。
実は関数の =UFClrxxx() が入力されていないどのセルの結合でも
「Microsoft Excel は動作を停止しました...APPCRASH」になります。
試してみましたが、
Application.Volatile がなければ正しく動き、
Application.Volatile の前に On Error Resume Next で正しく動きます、
Application.Volatile の前に On Error Goto err でエラーの表示処理をしませんが正しく動きます
思うに、エラーが発生しているのではなく、
Application.Volatile の前にOn Error Resume Next を書く事で何か状況が変わるようです。
Application.Volatile をなくす方向へ向こうかなと思っています。
もう少し調べてみます。
(kazu) 2014/04/05(土) 15:12
https://www.excel.studio-kazu.jp/DL/UFClr/UFClr20140404.lzh
可能ならダウンロードしてUFClr1228 をUFClr20140404 に切り替えて
結果を報告頂けるとありがたいです。
(kazu) 2014/04/06(日) 22:23
https://www.excel.studio-kazu.jp/DL/UFClr/UFClr20140404.lzh
(kazu) 2014/04/06(日) 22:35
(kazu) 2014/04/07(月) 21:15
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.