Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : 指定なし)
数値の大きさで変更する・しないを判断
投稿日時: 21/11/05 23:13:02
投稿者: まさゆり

Aセルに入力した数値が、Bセルに入っている値より
 大きいときは、Bセルの値がAセルの数値に変更され、
 小さいときは変更しない
ような式はどのようにしたら良いでしょうか
”変更しない”関数を検索しても不明でした。
 
      セル A   B
@現状      100  120  (初期)
AAを130に修正  130  130  (A値を反映)
BAを115に再修正 115  130  (B値を変更しない)
 
?変更しない”関数を検索しても不明でした。
Bセルに if 関数(正、偽)を考えましたがつながりませんでした。
一方、C、Dセル(非表示)に A、Bセルの各値をリンクを試みても、結局つながりませんでした。
 
よろしくお願いします。
 
 
 

回答
投稿日時: 21/11/06 11:13:28
投稿者: WinArrow
投稿者のウェブサイトに移動

自セル(Bセル)と他セル(Aセル)を参照して、自セルを変更することはできません。(ユーザー定義関数でも不可)
   
VBAで対応する方法を提案します。
   
例1.
Aセルの値が変わったというイベントを使う方法です。
VBEの画面を開き
Sheet1シートをクリックして、下記のコードをコピペしてみてください。
   

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 1 Then Exit Sub
    If Target.Cells.Count > 1 Then Exit Sub
    If Target.Value > Target.Offset(, 1).Value Then
        Target.Offset(, 1).Value = Target.Value
    End If
End Sub

投稿日時: 21/11/07 22:29:06
投稿者: まさゆり

 
マクロ・VBAは、昔一通り経験したが一部失念しているので、
所有する参考書を片手に(他の条件を絡ませつつ)試みてみます。
 
早速の対処方法をお教えいただき、ありがとうございました