• 締切済み

excelユーザー関数で

同じブック内の全てのシートの、引数で指定したセルの文字列をconcatenateするユーザー関数を作成しました。が引数でセルを指定する時に""をつけなければならず少々不便を感じています。どのように修正すれば""をつけなくてよいようになるでしょうか? VBA初心者です。よろしくお願いします。 Function allbookscont(ContCell As String) As String Dim strRet As String For a=2 to Worksheets.Count strRet = strRet & Worksheets(a).Range(ContCell).Value Next a allbookscont = strRet End Function

みんなの回答

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

こういうことでしょうか? Function allbookscont(ContCell As Range) As String Dim strRet As String For a = 2 To Worksheets.Count strRet = strRet & Worksheets(a).Range(ContCell.Address).Value Next a allbookscont = strRet End Function

shawshaw
質問者

お礼

ありがとうございました。 おかげさまで悩みが解決しました。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

例えばSheet1のセルに =hatena(A1) と入れてSheet2のA1の値を取得するなら、 Function hatena(r As Range) As String hatena = Worksheets("Sheet2").Range(r.Address).Value End Function でも出来ましたが、 >引数で指定したセルの文字列 文字列がセル番地の事でなければ違うかな。

shawshaw
質問者

お礼

ありがとうございました。 おかげさまで悩みが解決しました。

関連するQ&A