エクセル初心者です。
A列の 1~10 迄の各行にそれぞれ異なる整数値を入力し、実行(改行)キーが押された時に
一定数値 ( 例えば 75 という数値 ) が減算された数値が表示されるようにしたいのですが・・・
例えば・・・
1) A1 に 130 と入力する
2) 実行(改行)キーを押下
3) すると A1 には 130-75 の演算結果 55 が表示される
4) 同様に A2 に 190 と入力する
5) 実行(改行)キーを押下
6) すると A2 には 190-75 の演算結果 115 が表示される
※A列の 1~10 の各行内で未入力のセルがある場合は空白のまま
上記のような事をしたいと思い色々調べております。
エクセル・マクロについては当方の理解がまだ浅いのですが
一応その線でも調べてるところです。
しかしまだ、これといった解決策が見つからず・・・
http://ciao.aoten.jp/ciao/2010/04/500-0a03.html
にあるような、後で一括変更するような方法ではないやり方があれば
是非ご教授頂きたいと思い質問投稿させて頂きました。
どなたか詳細なご回答、宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
No.2・3です!
たびたびごめんなさい。
No.2の回答でダブルクォーテーションの数が違っていました。
>Intersect(Target, Range("A1:A10,E1:F10"))
とするか
もしくは補足通りにするのであれば
>Intersect(Target, Range("A1:A10,E1:E10,F1:F10"))
のようにしてください。
検証せずに投稿してごめんなさいね。m(_ _)m
度々親切で解り易いご回答頂き大変恐縮してます。
教えて頂いた通りにしてみたところ無事解決出来ました。
この度はVBAズブの素人の当方に懇切丁寧に
色々教えて頂き本当に助かりました。
有難う御座いました。
No.3
- 回答日時:
No.2です。
エラーに関してですが・・・
補足にあるようにある範囲が連続している場合(今回はE・F列)は
> Intersect(Target, Range("A1:A10", "E1:F10")
といった具合にしてみてください。
対象範囲が離れている場合にカンマで区切ります。
おそらく大丈夫だと思います。m(_ _)m
No.2
- 回答日時:
こんにちは!
本来であれば入力チェックの意味を含めて別セル表示の方が好ましいと思いますが・・・
ご希望の方法となるとVBAになると思います。
一例です。
画面左下の操作したいSheet見出し上で→クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストしてA1~A10セルにデータを入力してみてください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
If Intersect(Target, Range("A1:A10")) Is Nothing Or Selection.Count <> 1 Then Exit Sub
Application.EnableEvents = False
If Target <> "" Then
If IsNumeric(Target) Then
Target = Target - 75
End If
End If
Application.EnableEvents = True
End Sub 'この行まで
こんな感じではどうでしょうか?m(_ _)m
ご回答頂き有難う御座いました。
上記の方法で出来ましたッ!
出来ればもう一点教えて頂きたいのですが・・・
A1~A10
と同じような事を同一シート内の
E1~E10
F1~F10
にも適用させたい場合
Range("A1:A10", "E1:E10", "F1:F10"))
と書いてはダメなのでしょうか?
Range("A1:A10", "E1:E10"))
と書き換えた場合は思い通りの動きをしてくれるのですが
F1~F10の分を追記して
Range("A1:A10", "E1:E10", "F1:F10"))
とすると
引数の数が一致しない・・・
という趣旨のエラーメッセージが表示されてしまいます。
自己解決しようと試みてますが当方 VBA にまだ不慣れな為
お手上げ状態でして・・・
No.1
- 回答日時:
A1セルからA10セルに数値が入力されているとします。
初めにどこか関係のないセルに75を入力し、そのセルを選択してコピーします。
次にA1セルからA10セルを選択して右クリックし「形式を選択して貼り付け」で「減算」にチェックをして貼り付けを行うことでお望みの結果が表示されます。
早速のご回答、有難う御座います。
KURUMITO様の言われます方法は、質問欄に
記述させて頂いた参考サイト
http://ciao.aoten.jp/ciao/2010/04/500-0a03.html
の方法と同様、入力して後に修正変更する事に
なってしまいます。
任意の未入力列行セル群に予め
仕込みをしておき、数値入力がされエンターキーが
押された時に減算結果が表示されるようにしたいのです。
うまく表現出来なくてスミマセン・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロだと数式が表示される 2 2022/09/10 14:48
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- Excel(エクセル) エクセル 自動計算 1 2023/01/30 13:28
- Visual Basic(VBA) エクセルVBAで『A列』に新規で数値を入力し『B列』から右方向の空白セルにその値を貼り付ける方法 4 2022/11/05 08:37
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Excel(エクセル) エクセルの自動更新のタイミングについて 1 2022/07/20 16:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
Excel 日付を比較したら、同じ...
-
Outlookを立ち上げたらGoogleロ...
-
outlookのメールが固まってしま...
-
会社PCのメールが更新されない
-
【スプレッドシート】指定の日...
-
ウィンドウィズ メモ帳で日付だ...
-
英数字のみ全角から半角に変換
-
Excelで空白以外の値がある列の...
-
Microsoft Formsの「個人情報や...
-
microsoft office
-
MicrosoftOfficeについて質問で...
-
マイクロソフト 一時使用コード...
-
outlookで宛先が異なるメールを...
-
Outlookでの時間指定送信機能に...
-
【スプレドシート】目標達成の...
-
自分の専門分野の仕事。初見で...
-
Microsoft Officeを2台目のPCに...
-
【Excel VBA】PDFを作成して,...
-
エクセルでXLOOKUP関数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
【スプレッドシート】指定の日...
-
英数字のみ全角から半角に変換
-
会社PCのメールが更新されない
-
マイクロソフト 一時使用コード...
-
Office 2021 Professional Plus...
-
エクセルで例えば、関数を使っ...
-
Microsoft Formsの「個人情報や...
-
1つのPCに「Excel 2010」「Exc...
-
エクセルで例えば、A1に㈱ベ...
-
理由を教えてください。
-
エクセルでXLOOKUP関数...
-
マイクロソフト オフィスについて
-
VLOOKUP関数について
-
teams設定教えて下さい。 ①ビデ...
-
Googleのスプレッドシートでシ...
-
【Excel VBA】PDFを作成して,...
-
Microsoft365で写真をアルバム...
-
Outlook で宛先が複数の場合の人数
-
Excel テーブル内の空白行の削除
おすすめ情報