投稿

9月, 2025の投稿を表示しています

エクセルセル位置3

 別シートへのハイパーリンクがあるセルで、セルをクリック後にハイパーリンクの表示文字列をクリックすると、表示位置がずれる確率が上がる。なんで?  で、次のように、取得から移動その後チェックに変えてみた。前回との違いは、データ的に1度一致した後に、もう一度処理を繰り返すことになると言うことだ。  無駄なことをしているわけだが、こちらの方が確実にずれなくなった。   おそらく、無駄な処理がウエイト代わりとなってタイミングを調整しているのだろうが、やはり謎のままである。まあ、ウエイトで遅らせるより、確実に移動を確認して止まるので、こちらの方が遅延は少ないとは思うのだが。  実使用上、こうなると知っていれば知覚は可能だが、体感的に遅くなることはないので問題はないだろう。あれ、今ちらついた?程度なので。 Private Sub Worksheet_Activate()   Dim MyRa, MyRb As Long   Do         MyRa = ActiveWindow.VisibleRange.Item(1).Row         MyRb = ActiveCell.Row         ActiveCell.Offset(-1, 0).Select         ActiveCell.Offset(1, 0).Select         ActiveWindow.ScrollRow = ActiveCell.Row     Loop Until MyRa = MyRb End Sub

win10

  ノートのVAIOのウインドウズが10なので、バージョンアップをする。  一応まだ動くので、緊急用のサブとしてあっても困らないだろうと言うことで。  また、証明書の関係で、win10は最新にしておかないと、エラーになるという話もあるので、やっておくかと言うことに。  とはいえ、数年眠ったままにしておいたから、時間はかかるだろうなあ。まして、HDDだし。  更新をポチ。24時間経っても終わらない(^_^;)  やっと、再起動まで辿り着いたのだが、位置を変えようと持ちあげた時に電源が落ちる。  結局、22h2のみやりなおしに。  まあ、システムは壊れてたので、復旧の手間もあり、さらに半日かかる。  コマンドでチェックし、イメージファイルを直したのだが、ダウンロードが進まない。  結局、ダウンロードしたファイルを手動で削除して解決したのだが、参考にしたサイトでは、それ関係のフォルダの中身を全部削除するとあったのだが、別のサイトでは、ダウンロードだけとある。どうも、後者が正しいらしい。いろいろ消しちゃったのだが、今のところは問題なかったので大丈夫だったのだろう。 ここがちゃんとしていて詳しいみたい。  で、電源は、バッテリーが死んでたらしい。まあ、年代的にはそうだよなあ。。プラグが抜けかけて、電源が落ちたらしい。  しかし、バッテリーチェックでは、問題ないと出るんだけど。  バッテリーは、1年ほど充電しないと死ぬことがあるらしいから、それかなあ。  一年の無料延長アップデートも、一応しておく。こちらは、条件を満たしていたので、ポチるだけだった。

エクセルセル位置2

  解決したと思ったんだが、やっぱりずれる。  で、ずれると、本来の位置との差が、次に選択したセルに反映される。  どういうことかというと、本来アクティブセルは5で表示は3だとすると、6を選ぼうとすると8になるというわけの分からないことに。  マウスホイールの入力で、正しい位置に飛ぶのだが、実に怪しい挙動だ。  本来は、セルのハイパーリンクで別シートに飛んだらアクティブセルを左上に位置調整するという物なのだが。2013だとちゃんと動いたんだよなあ、2024だとなんでずれるんだろ。  シートがアクティブになったら位置調整するイベントなのだが、おそらく遅延が発生していて、表示と内部処理?がずれるっぽいんだが。  前回の上下移動は、結局、時間稼ぎでタイミングを遅らせただけなのだが、やはり、それでもずれたりする。  かといって、永遠動かすとか、weit かけるというのも、必要以上に動きを遅らせるのでまずい。  ということで、   Do        ActiveCell.Offset(-1, 0).Select        ActiveCell.Offset(1, 0).Select        ActiveWindow.ScrollRow = ActiveCell.Row        MyRa = ActiveWindow.VisibleRange.Item(1).Row        MyRb = ActiveCell.Row   Loop Until MyRa = MyRb  としてみて、現在の1行目と、飛んできたアクティブな1行目を比べて、一致するまで繰り返すという形に。  これだと、オフセットいらないだろと思えるのだが、外すとやっぱりずれる。  うーん、美しくないなあ。