• ベストアンサー

EXCEL VBA教えてください

宜しくお願いいたします。 すいません式分からず丸投げでお願いです。 区分選択を作っています A1に答えを求めるブランクセル A2に小型、A3に中型、A3に大型が入っています A2をクリックしたときにA1に小型と表示され 小型が表示されている状態でA3をクリックすると 中型に変わるようにしたいのです。 関数ですと誰かがデリートをクリックして消して しまうのでVBAでお願いします。 何卒よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

シートモジュールに以下のコードを貼り付けてください [シートタブ]を右クリックで出るメニューから [コードの表示]を選択したら出てくる真っ白し画面 Private Sub Worksheet_SelectionChange(ByVal Target As Range)   If Intersect(Target, Range("A2:A4")) Is Nothing Then Exit Sub   Range("A1").Value = Target.Value End Sub

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

質問のしくみが、よくわからない。VBAでやれる思考状態ではない。 >小型が表示されている状態でA3をクリックすると中型に変わる 小型が表示されている状態でA3をクリックすると中型に変わる ようにしたいのです。 A2をクリックするとどうしたいのか。 ーー 例えば、「次の型」というボタンやセルを作って、 (A1セルが)小型――クリックー中型 中型――クリックー大型 大型――クリックー小型 のように推移するものを考えているのか? 3値における、サイクリックやローテイトと言われる仕組かな? ーー こんな部分的なところで、小賢しい仕組みに、VBAも熟達してないとおもうが、なぜこだわるのかな。リストボックスやコンボボックスなどでストレートに、型を選択させては?

  • HohoPapa
  • ベストアンサー率65% (454/691)
回答No.2

>A2に小型、A3に中型、A3に大型が入っています これは、 A2に小型、A3に中型、A4に大型が入っています ということでいいですね? 続いて、 >A1に小型が表示されている状態で >A3をクリックすると >中型に変わるようにしたいのです。 これは、  A1にA2の値が表示されている状態で  A3をクリックすると  A1の値がA3の値に変わるようにしたい と理解すればいいですか? ならば、  A1にA2の値以外が表示されている状態で  A3をクリックしたときに どのような挙動とすればいいでしょうか? また、 >誰かがデリートをクリックして消して >しまうので この記述は、 A1セルは直接書き換えることができないようにすることを 期待していますか? せっかくVBAで仕込むわけですから 期待する挙動をより厳密に説明し >丸投げでお願い したほうがいいと思います。

関連するQ&A

  • エクセルでデリートでも消えない式の入れ方

    A B と列があります AはBに数字が入ると色がつく表示にしてあります。 この状態で、Aの列を選択してデリートボタンをおしても色は消えません。 式は残ったままです。 ここからさらに A1 A2 と行があるのですが、 A1に数字が入った時に A2に同じ数字が表示される設定にしたいです。 関数などそのままいれると消えてしまうので、上記の色がつく設定のように A列を選択してデリートボタンをおしても消えない式をいれたいです。

  • Excel VBAについて

    VBA初心者です。 社内の様式に合うようなVBAを組みたいのですが。。。 1,様式は表になっており1つのグループに5つの選択肢があり横に5グループ,縦に12グループあります。(例えば1行目にA1.A2.A3.A4.A5|B1.B2.B3.・・・・E3.E4.E5 2行目にF1.F2.F3.F4.F5|G1.G2・・・・12行目にBM1.BM2のような表) 2,シートは2枚あり1枚目のシートで選んだ1グループ1項目に1つだけ○がつく(ダブルクリックで選択し,違う項目を選択すれば前に選んだ項目の○は消える。) 3,1枚目に丸がついた項目が2枚目の任意のセルに表示される(例えば1枚目のシートのAグループのA3を選択すれば2枚目のシートの任意のセルにA3と表示され,取り消し変更された場合は変更後の選択肢のみ表示される) 4,また,選択する項目は変更されないように保護をかけたい。

  • エクセルでのVBAについて

    エクセル2000を使用しています。 VBAにて「表示したい物件名をクリックしてください」のMsgBOXを表示してyesまたはnoを表示して YESが選択されたときはセルをクリックし、その後に範囲指定をします。 noが選択されたときは何も動作をしないという動きをしたいのですが、宜しくお願いします。

  • ボルボのトラック

    ボルボのトラックについて調べています。 日本語のHPではFM/FHと大型のトラックしか捜せませんが、ボルボは中型、小型のトラックについては生産していないのでしょうか? FEというタイプがあるそうですが、これはトラックの区分としては、大型、中型、小型のどれにあたるのでしょうか? 詳しい方いらしたら教えてください

  • excel97のVBAについて

    始めまして、MV3307と申します。 さて下記内容を、VBAでコードを書くつもりですが、マクロ初心者で記載 方法が分からないので是非ご教授お願いいたします。     記 (1)EXCELの"Sheet1"の数式バーに式が表示してあります。 (2)VBAの"コマンドボタン"をクリックして、数式バーの式をTexBoxに取得する。 以上です、宜しくお願いします。    

  • Excelの関数またはVBAについて

    A1-B1の結果がC1に出るような表を作りました。C1の結果が自動でA1に表示され、ループするようにしたいのですが VBAになるのでしょうか?VBAは全くわからないので、できれば列を挿入するなどして関数で出来たら。。。と思ってます。すいませんが、ご教授ください。お願いします

  • エクセルVBA セルの選択

    やりたいこと:VBAを動かしている最中に、(ループで何回も処理するごとに選択の範囲がちがうので)ある範囲のセルを手動で選択したい。 この方法をいろいろ調べてみましたが、わかりません。例えば、イメージとして、関数の挿入から関数を選んだときに「関数の引数」がでてきますね。このときに、右側の赤い矢印部分をクリックすると、範囲を選択できます。こんなイメージなのです。 ご存知の方、お教えください。宜しくお願いいたします。

  • Excel VBA 範囲内での○囲み

    範囲内(例えばC9:H9,C10:H10,D11:H11・・・・・)にある数値(セル)を選ぶとセル内の数値を○で囲むようにしたいのですが(前出のコードを参考に○を表示は出来るようになりました)、でも....範囲内で他のセルを選択(ダブルクリックで選択)した場合、前の○を消すことが出来ません。範囲内で新たに○囲みをすると、以前の○を自動的に消すことは可能でしょうか? まだまだVBAに関しては初心者なものでまったく思いつきません。 まさしく丸投げになりますが、教えていただけないでしょうか。

  • 関数をExcel VBAに書き換える

    仕事で以下の関数を使っていたのですが、VBAに書き換えたいのですが.... VBAで以下の関数をセルに入力する方法ですと不安定になってしまいます。(正確に答えが返ってこない)どなたか教えていただけますか? {=SUM(IF((販売一覧!$B$4:$B$500=A4)*(販売一覧!$F$4:$F$500='1211作成'!D4),販売一覧!$I$4:$I$500))}

  • 今の免許体系は

    わたしが中免をとったころは 小型・中型は教習所で取れて大型は試験場でした。 今はどうなっているんでしょうか。 区分分けと、教習所でどこまでとれるようになったのかおしえていただけませんか。

専門家に質問してみよう