• ベストアンサー

「戻り値」ですか?「返り値」ですか?

例えば Sub test1() MsgBox WorksheetFunction.Sum(Range("a1:a3")) End Sub でMsgBoxに表示される値の事は、「戻り値」ですか?「返り値」ですか? いまいちプログラミング用語がわからないので教えて下さい。 よろしくお願い致します。

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

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

どちらでもよい。色々解説本を読んで、言語に関するWriterがどちらを使って居るか、多いと感じたほうを使えば良いのだ。用語にそんなに心配して、ほかの勉強することが沢山あるのに、おろそかにならぬように。生徒などに教えるなら、教科書(テキスト)に載っているほう(用語)で統一するとか。 プログラム言語の用語は、英語由来の訳語なので、2、3に分かれたり、カタカナ語のままの場合はある。 こんなところへ質問しなくても、Googleで「戻り値」「返り値」で照会すれば、出現頻度(590万と680万と拮抗)でわかったり、http://e-words.jp/w/E688BBE3828AE580A4.html 両者併記されて説明があるだろう。

mjuikjhy8
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • Gletscher
  • ベストアンサー率23% (1525/6504)
回答No.1

どちらでもいいんじゃないですか? 元々、「Return Value」を訳しただけですから、約した人によって日本語が違いますね。

mjuikjhy8
質問者

お礼

どちらでもいいのですね。 ありがとうございます。参考になりました。

関連するQ&A

  • Functionとsub どちらを使った方がいいで

    Functionとsub どちらを使った方がいいですか? VBA初心者です。 ------------------------ Sub test1() MsgBox "testです" End Sub Function test2() MsgBox "testです" End Function ------------------------ どちらのコードも結果は同じです。 基本的に、マクロを組む時は、Functionとsubとどちらを使った方が良いのでしょうか? ------------------------ Sub tset3() MsgBox test4 End Sub Function test4() test4 = "testです" End Function ------------------------ のように戻り値・返り値がある場合のみFunctionを使うべきなのでしょうか? ご回答よろしくお願いします。

  • アクセス DCountの返り値が必ず0になる

    DCountの返り値が必ず0になってしまうのです。 該当のフィールドには値は入っています。 しかし Sub test() Dim ColName As String ColName = "あああ" Debug.Print DCount("[" & ColName & "]", "test", "[" & ColName & "] = '" & ColName & "'") End Sub をすると、どんなに値がはいっていても0になってしまいます。 フィールドの型はテキスト型です。

  • SPREAD.netで選択セルの合計を求めるには

    お世話になります。 環境は、SPRED.net + vb2005 です コードの中でスプレッドの関数を使いたいのですが いろいろ調べましたが分かりません。 ご存知の方、ご教示お願いいたします。 たとえば、EXCELでは、こんな感じです。 Sub test() Dim r As Range Set r = Selection MsgBox Application.WorksheetFunction.Sum(r) End Sub よろしくお願いします。

  • Range.Name プロパティの使い方

    VBAの勉強中のものです。(エクセル) 一つ一つヘルプを見て、検証して勉強していこうと思ってるのですが 使い方がわからないので教えてください。 Range.Value プロパティならうまくいくのですが、 Range.Name プロパティの使い方がわかりません。 ----------------------- Sub test1() MsgBox Range("a1").Name End Sub Sub test2() Dim R As Range Set R = Range("a1") MsgBox R.Name End Sub ----------------------- どちらも、アプリケーション定義またはオブジェクト定義のエラーです。になります。 ----------------------- Sub test1() MsgBox Range("a1").Value End Sub Sub test2() Dim R As Range Set R = Range("a1") MsgBox R.Value End Sub ----------------------- rangeにすればうまくいきます。 Range.Name プロパティの使い方を教えてください。アドバイスよろしくお願いします。

  • EXCEL VBAのRangeプロパティについて

    EXCEL VBAのRangeプロパティについて 下の2つのプログラムで表示されるメッセージは、 プロシージャAは"$B$1" プロシージャBは"$A$1" なのですが、Rangeプロパティはどういう使われ方をしているのでしょうか? お教えくださいませ。 ・プロシージャA Sub test1() Cells(1, 2).Activate MsgBox ActiveCell.Range("A1").Address End Sub ・プロシージャB Sub test2() Cells(1, 2).Activate MsgBox ActiveSheet.Range("A1").Address End Sub

  • エクセルマクロ offsetの使い方

    Sub tess() With Worksheets("Sheet1") Cells(1,11)=Application.WorksheetFunction.Max(Range("A1:A10")) End With End Sub 上記でA1~A10のうちの最大値1つがA12に表示されます。 ここで上記コードに手を加えて、例えばA12にA8の”下のセル1つの値”を表示したいのですが、 Cells(1,11)=offset.(-1, 0).Application.WorksheetFunction.Max(Range("A1:A10")) と”offset(-1, 0)” を加えても動きません。WorksheetFunctionを加えても動きません。 offsetを入れる位置と使い方がわかりません。是非よろしくお願いいたします。(OS:WindowsXP、Excel2003)

  • エクセルVBAでApplication.SumとWorksheetFunction.Sum

    以下のVBAはどれもまったく同じ答えを返しますが、どのような違いがあるのでしょうか? 違いがないなら一番短い書き方をしようと思います。 よろしくお願いします。 MsgBox Application.WorksheetFunction.Sum(Range("C21:C23")) MsgBox WorksheetFunction.Sum(Range("C21:C23")) MsgBox Application.Sum(Range("C21:C23"))

  • エクセルVBAとワークシート関数が違う答え?

    エクセル2013です。 A1セルからA100セルにすべて1%と入力されています。 BIセルに =SUM(A:A) と数式が入っており、100%と表示されています。 A,B列のセルの書式はすべてパーセテージです。 101行以下には何も入っていません。 C1セルに =B1=1 と数式が入っており、TRUEが表示されています。 標準モジュールに Sub test01() MsgBox Range("B1").Value = 1 End Sub と書きました。 実行したところFalseが帰ってきました。 なぜ、TRUEにならないのでしょうか? なお、 Sub test02() MsgBox Val(Range("B1").Value) = 1 End Sub とすると、TRUEが帰ります。 でも、Val関数はStringを数値化するものですよね? B1セルはもともと数値なのでVal関数で答えが変わるのも不思議です。 どなたか、わかるように教えていただけないでしょうか?

  • EXCEL VBAがうまく動きません。

    指定された rangeの中から2番目に小さい値を検索し、そのセルの行数を求めようとしていますが、えらーが出ます。いくつか試してみましたがだめでした。 初歩的な質問で恐縮ですが、教えてください。 構文は以下のように書きました。 Private Sub test() Dim s As Double Dim r As Range Dim secondsmall As range Dim smallrow as integer r = Worksheets("sheet1").Range("a1:a4") s = WorksheetFunction.Small(r, 2) secondsmall = WorksheetFunction.Find(what:=s) smallrow = secondsmall.row MsgBox smallrow end sub 宜しくお願いします。

  • Sheet1のA1の値が変わったら、その値をメッセ

    Sheet1のA1の値が変わったら、その値をメッセージボックスで表示したいのですが --------------------------------------------------------- Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$A$1" Then MsgBox Range("a1").Value End If End Sub --------------------------------------------------------- としたのですが A1に値を投入しても何も起こりません。 カーソルを他のセルに充てて、 再度A1をクリックすると、 MsgBox Range("a1").Value が表示されます。 そうではなくて、 A1に値を入れて、アクティブセルをA1じゃなくなった時(値を投入後すぐ) マクロを実行させるにはどうすればいいでしょうか?