SPREAD3.0でのフォーカス移動に関して


koumori  2007-03-10 06:21:47  No: 135717

SPREAD3.0に関しての質問です
環境はVisual Basic6.0(SP6.0)で最新のパッチを当てています

ソース上で
'*******************************************************************
With vobjClsSpread
    'アクティブにしたいセルの座標を取得
    .Col = Col
    .Row = Row
    .SetFocus
    .Action = ActionActiveCell
        
End With
'*******************************************************************(vobjClsSpread←SPREADシート)
と書いています
ここで、セルに値を入力中にこの処理を呼ぶとフォーカスが移動しないことがあります
セルに値を入力する前であれば、フォーカスは無事移動しています

この現象に関して、何か知っている方がいらっしゃいましたら、ご教授のほどよろしくお願いします


特攻隊長まるるう  2007-03-14 05:46:10  No: 135718

SPREAD のことは全然知らないけど、
普通のことにしか思えない。。。(^^;)

この系統のコントロールって、データが
確定すればデータ更新処理が走るだろうし、
キャンセルするなら入力前の戻るのでは?
どっちつかずの状態で、何の命令もしないで
他のセルをアクティブにする→入力処理を
終えてしまう。…って強引すぎると思いませんか?
少しはスプレッドの身になって考えてあげては?

入力中のセルがアクティブなんだから
他のセルを同時にアクティブにしようと
思ってるなら考え方が無茶。
スプレッドが実現できそうにない要求をする
べきではないと思います。

入力中のセルをアクティブじゃない状態に
してから、他のセルに移動しようと思って
いるなら、入力中のデータをキャンセルする
なり確定するなり、どうすればいいのか、
スプレッドに命令してやればいいのでは?


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加