次の方法で共有

定義したセルの名前の頭に自動的に"@"が付記される件

Anonymous
2020-01-17T02:22:54+00:00

Office360 バージョン1911を使用しています。VBAで定義したセルの名前をシートの計算式で利用してますが、最近名前にいつのまにか"@"が付記されているのに気がつきました。

(例えば"_ABC”が"@_ABC"となる)

計算には影響はないようですが、これはどのような意味をもるのでしょうか。

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

  1. Anonymous
    2020-01-22T05:13:17+00:00

    > ただあまり特殊な難しい処理はしてない私のマクロで、

    > なぜ"@"が付記されたかは疑問は残ります。

    それについては実際のブックやコードを見てみない限り推測するしかありませんが、

    前述した記事にあるように、従来のバージョンにおいて「共通部分の参照」と

    解釈されていた箇所が、最新の Excel で開いた/編集した際に自動変換された

    のではないでしょうか。

    ( Formula プロパティに数式を設定した場合の例は Office TANAKA の記事にあります)

    例えば「=SUM(タイプ)」のような数式であれば、こうはならなかったはず。

    > このファイルをW10 excel 2013 で開くと更に次のように変更されていました。

    > 【=IF(AND(_xlfn.SINGLE(タイプ)=A155,_xlfn.SINGLE(構造)=B155),1,0))】

    > その結果セルの計算結果がエラ-となりお手上げ状態になりました。

    そして数式において "@" が指定された箇所(≠構造化参照)については、

    そのブックが保存される際に内部上は「_xlfn.SINGLE(タイプ)」のような

    (画面上には現れない)形で記録するように処理されているものと思われます。

    新しい機能に対応していないバージョンの Excel でそのブックを開けば、

    当然エラーとなるはずです。

    4 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません

12 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2020-01-21T05:58:33+00:00

    名前を定義させたら”@”が自動で付きます。マクロやVBA以外でもテーブルシートや表を作ってタイトルに関数式で使い易くする為タイトル行に名前の定義を設定したりします。

    回答頂きありがとうございます。"@"の意味はわかりましたが、まだよく理解できていないので再質問させていただきます。

    下記は実際のセルの計算式内容(【】内)です。

    名前定義は全てVBAのコードで行っています。

    作成当初(W10 office365 )

    【=IF(AND(タイプ=A155,構造=B155),1,0)】

    この時はとくに"@"は付加されていませんでした。

    2020/01/15に開くと自動的に変更されていました。

    【=IF(AND(@タイプ=A155,@構造=B155),1,0)】

    この時、旧バージョンに対する警告のようなダイヤログが表示されたのですが、内容をよく確認しないでOKしてしまいました。これがどうも原因のような気がします。

    このファイルをW10 excel 2013 で開くと更に次のように変更されていました。

    【=IF(AND(_xlfn.SINGLE(タイプ)=A155,_xlfn.SINGLE(構造)=B155),1,0))】

    その結果セルの計算結果がエラ-となりお手上げ状態になりました。

    しかたないので、365側で"@"をすべて削除して2013へ渡し無事使用することができました。

    その後ネットで調べると"_xlfn"というのは、古いバージョンで対応していない関数への注意喚起のような説明が’あったので、"@"に対する処理なのかもしれません。

    そこで質問です。

    1.名前に"@"が付記される仕組みは2013当時はなかったのでしょうか。

    2.2013以前のバージョンで使用する場合、"@"削除以外の簡単な対応方法はありますか。

    おそれいりますが、よろしくお願いします。

    0 件のコメント コメントはありません
  2. Anonymous
    2020-01-18T04:02:41+00:00

    名前を定義させたら”@”が自動で付きます。マクロやVBA以外でもテーブルシートや表を作ってタイトルに関数式で使い易くする為タイトル行に名前の定義を設定したりします。

    0 件のコメント コメントはありません
  3. Anonymous
    2020-01-17T04:28:49+00:00

    > VBAで定義したセルの名前をシートの計算式で利用してますが、

    > 最近名前にいつのまにか"@"が付記されているのに気がつきました。

    > (例えば"_ABC”が"@_ABC"となる)

    ・定義された名前自体が "@_ABC" になっている。

    ・セルに設定した数式において "@_ABC" と記述されている。

    どちらの意味でおっしゃっているのでしょうか。

    0 件のコメント コメントはありません
  4. Anonymous
    2020-01-17T02:44:58+00:00

    こんにちは。

    アットマークは、たそか入力された文字列を文字列として表示させる機能だったと思いますよ。

    0 件のコメント コメントはありません