No.4ベストアンサー
- 回答日時:
えっと、変数の使い方がまだ良く分かってらっしゃらないんじゃないかと推測します。
まず、電卓フォームのコードを表示して、
Dim curMemory as Currency
って書きます。
これで、このフォームのすべてのプロシージャから参照可能な、「curMemory」って言う名前の変数(通貨型)が使用可能になります。
んで、まずは「M+」を実装してみます。
フォーム上にボタン「cbMemoryPlus」と、数値を表示するためのテキストボックス「tb表示」が配置されているものとします。
まず、ボタンをダブルクリックで、Clickイベントのコードを表示させた後、
Sub cbMemoryPlus_Click()
'「curMemory」に、(「現在の『curMemory』の値」+ 「テキストボックスの値」)をセットする
curMemory = CurMemory + val(Me.tb表示)
End Sub
「M-」「MC」も同様(あえて書きません。)
「MR」は
Sub cbMemoryRecall_Click()
'テキストボックスに「curMemory」の値をセットする
Me.tb表示 = curMemory
End Sub
ですね。
「CE」も同様です。(あえて書きません。)
本を読むのは重要ですが、実際のプログラミングにおいては八割方は、どんな本にも載ってないようなコードを書かなくてはなりません。自分の持てる知識を総動員して、試行錯誤+創意工夫によって答えを導き出さなくてはならないのです。
五月末までにまだ暫くありますので、その間、ご自身がお書きになったコードを1行ずつ読み、そこで何が行われているのかをしっかりと理解しておくようにすれば、いいかもしれません。そうすれば今後似たような問題を出されたとしても、スラスラ解けるようになるのではないかと思います。
ってことで、がんばってください!
※「電卓」は初級コースの問題ですが、これが「関数電卓」になるといきなり上級コースになっちゃうんですよねぇ。
私も昔「電卓」に取り組んだことがありますが、これを関数電卓にアップグレードしようとして悩みぬいた挙句、挫折した記憶があります。(当時は後置記法なんて、微塵も知らんかったもんなぁ。)
この回答への補足
お礼が遅くなり申し訳ありません。ありがとうございました。すみません、折角細かく書いて下さっているのに、私の乏しい知識では自分の(本の)コードのどこに入れたら良いのかが分からないのです。入れる場所はどのようにすれば宜しいのでしょうか。
そして、教えて頂きたいのですが今回はテキストボックスではなく、ラベルで数字を出しているので、説明して下さったテキストの部分をどのように変えれば良いのかが分からないのです。後、ラベルで、数字を12桁以上、表示出来ない様にするには、MaxLengthでやっているのですが、エラーが出てしまいます。どうすれば良いと思われますか。
お時間がありましたら、ご返答の方宜しくお願います。
No.3
- 回答日時:
No.2
- 回答日時:
メモリ付きの電卓は使ったこと有りますか?
とりあえずメモリ用の変数を一つ用意して、
M+:メモリ用の変数に現在の値を加算する
M-:メモリ用の変数から現在の値を減算する
MR:メモリ用の変数の値を現在の値とする
MC:メモリ用の変数をゼロクリアする
とりあえずこれだけです。そんなに難しい実装は必要ないと思うんですが・・・
学校に通っている時、簿記などやっていましたので、電卓機能は分かるのですが、どのようにコードを書けばよいのかが、分からないのです。
でも、shigatsuさんのアドバイスを参考にさせて頂きます。お忙しい中、助言有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 計算機科学 電卓で一度に計算するやり方 9 2022/06/11 14:06
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Excel(エクセル) エクセル/列追加時、合計行の計算式 7 2023/03/15 11:14
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Visual Basic(VBA) VBでExcelの表形式の様なデザインを作りDBと連携させる。 4 2023/02/28 11:39
- Visual Basic(VBA) VBプロジェクトでのフォルダ構成について 1 2023/07/22 03:49
- Excel(エクセル) 荷捌作業効率をあげるためのエクセル関数を教えてください。 8 2022/10/07 08:17
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBAのリストボックスの値...
-
ComboBoxの初期値をコピーする方法
-
プロシージャの呼び出し、また...
-
テキストボックスのvalueとtext...
-
ユーザーフォームの入力をシー...
-
Excel VBA 複数選択したリスト...
-
変数名の取得
-
textboxとLabelを動的に変更する
-
VB.NETでアクティブなformを知...
-
? ←これってどうゆう意味ですか...
-
vbaの繰り返しで求める最大値に...
-
C言語では0は・・・
-
W10環境変数の%記号
-
VB.NETのスクロールバーコント...
-
vbscriptを使いexcelを参照して...
-
if ( fp == NULL ){ を if ( f...
-
マクロ 特定のセル値のみクリ...
-
C#の質問です。
-
マクロで奇数と偶数の値を2か所...
-
以下のプログラムを作るとする...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
マクロ 特定のセル値のみクリ...
-
Geogebraの操作方法について
-
VB.NETでコンボボックスの1行目...
-
VB初心者。小数点以下の表示で...
-
変数名の取得
-
値を返さないコード パス
-
【C++/CLI.NET】コンボボックス...
-
Excel VBAのリストボックスの値...
-
PL/SQLでのTO_DATEの時間取得に...
-
Powershellのparamについて
-
C#の質問です
-
vbaの繰り返しで求める最大値に...
-
VBA ドロップダウンリストを残...
-
VBA(自然数)
-
シーケンサで最小値を保持する
-
[VBA]選択範囲の下から上に処理...
-
vbscriptを使いexcelを参照して...
-
[VB.net] DataGridViewのコンボ...
-
変数に代入してある数値を表示...
おすすめ情報