カテゴリー
SugiBlog ホームページ制作・システム開発|大阪

他のシートの値を参照するときに便利なINDIRECT関数

通常は他のシートの値を参照し表示しようとするとき、
以下のように式を書くと思います。

=Sheet1!A1

特に数が少ない場合はこれで問題ないと思いますが、
数が増え、参照するシートも可変の場合にはいちいちシート名を
打ち変えて修正していくには手間がかかり過ぎます。

そんな時に利用したいのがINDIRECT関数です。
INDIRECT関数は参照したいシートの名前をセルの値を元に判別してくれるのです。

Sheet2のA1に「Sheet1」と入力されていたとします。
そしてA2に以下の式を入力します。

=INDIRECT(A1&"!A1")

するとSheet1のA1に入力されている値が表示されます。

こうすることで、いちいち式を変更しなくても
セルの値を変えれば参照するシートを変更することができます。

この記事がお役に立ちましたらシェアお願いします

183 views

Excel VBA 画像の挿入

Sub auto_open()

    Dim myFileName As String
    Dim myShape As Shape

    myFileName = ActiveWorkbook.Path & "\sample.bmp"

    ' 選択位置に画像ファイルを挿入し、変数myShapeに格納
    Set myShape = ActiveSheet.Shapes.AddPicture( _
          Filename:=myFileName, _
          LinkToFile:=False, _
          SaveWithDocument:=True, _
          Left:=Selection.Left, _
          Top:=Selection.Top, _
          Width:=0, _
          Height:=0)

    ' 挿入した画像に対して元画像と同じ高さ・幅にする
    With myShape
        .ScaleHeight 1, msoTrue
        .ScaleWidth 1, msoTrue
    End With

End Sub

ACCESSからExcelを操作し、挿入する場合
続きを読む…»

この記事がお役に立ちましたらシェアお願いします

10,157 views

リスト選択のプルダウン

[ファイル]-[入力規則]を開く
設定タブで入力値の種類を「リスト」にする
「元の値」入力欄にカンマ区切りでリスト選択したい値を入力しOK

この記事がお役に立ちましたらシェアお願いします

1,669 views

文字列のフォーマット

関数を使用して文字列をカンマ区切りにしたい時
VBではなく、セルに直接入力したい場合に使用

TEXT関数を使用する

TEXT(10000, "#,###")

結果

10,000

この記事がお役に立ちましたらシェアお願いします

1,036 views