• ベストアンサー

Excellの列名を得るには?

Excellの列名を得るには? ワークシート上で通常列名はA,B,Cです。 ところが、=cell("col",X1)では1,2,3・・となります。 このcolは列番号と説明されています。列名としてA,B,C・・と表現するにはこの式をどう変更しましょうか?

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

  • ベストアンサー
noname#79209
noname#79209
回答No.2

#1です ゴメンなさい =CHAR(cell("col",X1)+64) でした。

aerio
質問者

お礼

使わせてもらいました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (6)

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

一応、 =SUBSTITUTE(ADDRESS(ROW(BX5),COLUMN(BX5),4),ROW(BX5),"") で、列名のBXが求められますが、式を書く段階でBXと入力するので、あまり意味がないのではないでしょうか?

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.6

下記のような方法で判ると思う。 Sub test01() col = 50 s = Cells(1, col).Address MsgBox s x = Split(s, "$") MsgBox x(1) End Sub ーーーー ユーザー関数化すると 標準モジュールに Function colk(a) s = Cells(1, a).Address x = Split(s, "$") colk = x(1) End Function ーー シートで 関数で =colk(50) でAXが返る。 ーー しかし列番号で、(関数、VBAとも)ほとんど用が足りるのに、と思う。 またA,B,C・・も列記号とは言わないようだ、列番号のまま。 列名も他の使い方が多いのでは(自信なしだが)

全文を見る
すると、全ての回答が全文表示されます。
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.5

◆こんな方法はいかがでしょうか? =SUBSTITUTE(ADDRESS(1,CELL("col",X1),4),1,)

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.4

》 =cell("col",X1)では1,2,3・・となります 参考までに、=COLUMN(X1) でも「1,2,3・・となります」よ。 》 列名としてA,B,C・・と表現するにはこの式をどう変更しましょうか? AA列以右にも対応させたいなら、次式で可能です。 =LEFT(ADDRESS(1,CELL("col",A1),2),FIND("$",ADDRESS(1,CELL("col",A1),2))-1)

aerio
質問者

お礼

AA列以右では別の式になることを教えてもらいました。今回は使いませんでしたが、別の機会には使わせてもらうことにします。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
回答No.3

# かなり強引ですが... =IF(CELL("col",X1)<27,"",CHAR(INT((CELL("col",X1)-1)/26)+64))&CHAR(MOD(CELL("col",X1)-1,26)+65)

全文を見る
すると、全ての回答が全文表示されます。
noname#79209
noname#79209
回答No.1

=CHAR(cell("col",X1)+32)

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルで、列名がおかしいんです。

    こんにちは。 今、エクセルで編集しようと表をあけたら列名がおかしくなっていました。 通常、  A B C D ・・・ 1 2 3 となっているはずが、  1 2 3 4 ・・・ 1 2 3 となってしまっていて、通常の列名に直せないんです。 これは、添付ファイルを開いたもので 送信者は、アクセスのデータをエクセルに出力したものだと思われます。 どうしたら通常の列名にもどせるのか、教えてください。

  • Excell2002でのデータ処理

    Excell2002でのデータ処理に関数の使用を考えてます。 例えば、以下のようなデータがあります。 A列, B列 ,C列 1 , 10 ,  2 , 12 , 3 ,  8 , 10 5 , 15 , 8 8 , 20 , 9 , 18 , 10 , 16 , 20 ・ ・ (列がきれいに表示されてませんが!) A列は通し番号でありますが、中にはA列B列ともに同じ行で欠測値があります。 要はC列に「A列ー2の行」のB列の値を入れたいのです(上記C列参照)。 勿論B列に欠測値があるので該当する値がなければ「ブランク」とします。 ⇒C列にどのような関数を使えば良いのでしょうか? ⇒IF関数かとは思いますが・・・? ご教示ください。

  • EXCELL VBA のAVERAGEIFについて

    VIAT office2007 を使用しています。 EXCELL VBA で、 AVERAGEIFA関数を利用して、A、B、Cクラスごとに平均点を算出したいのです。 G6:G80 に出席番号が次のように入っています。 C11、A02・・・B21、A08、・・・A21、C12、・・・B28 K列に点数が入っています。 K100 にA組の平均点を表示させたいのです。 CELLS(100,11).Value = "=AVERAGEIF($G$6:$G$80,A*,$K$6:$K$80)" とすると、正しく計算されますが、$K$6:$K$80 のところを現在セルがある列を自動的に取得して、 平均点を算出させたいのです。 どうしたらよろしいのでしょうか? お教え願います。

  • エクセルの複数ワークシートの列を縦に並べる方法

    エクセルの1ファイル中にある複数のワークシートの列(項目は同じ)を 新しいワークシート列に統合する機能はありますか? ワークシート(1) 列A-1 列B-1 列C-1 ワークシート(2) 列A-2 列B-2 列C-2 ワークシート(3) 列A-3 列B-2 列C-3 新ワークシート 列A-1 列B-1 列C-1           列A-2 列B-2 列C-2           列A-3 列B-3 列C-3 と、いう具合です。コピーすればいいのですが、 一括でできる方法があれば、教えてください。 よろしくお願いいたします。                    

  • SELECT文で列名指定して桁あわせしたい

    SQLServerでSELECT文を発行した場合です。 列名をいくつか指定し、そのうちの1つの列名の桁数をあわせたいのですが良い方法はないですか? select A,B,C from xxtbl  例えばc列が8桁charだったとします。 値が”0”の場合に”00000000”としたいのです。 format指定みたいのはないですか?

  • excel2003の列名

    エクセルの列名をA,Bなどアルファベットにするにはどうすればよいのでしょうか? 前は関数にセルを指定するときA1とかしていたのでそうしたいのですが R1C1とかで表さなければならないのでどうにかしたいです。 仮にできないとするならば A$1のように絶対参照するには どのようにすればよいのでしょうか? 質問していて何を質問しているのかうまく伝わって いないとは思うのですが よろしくお願いします。

  • Excel_VBAでセル参照式を変更するには?

    あるシートのA1セルに、他シートセルの参照式を入れたく思います。 シート名は固定ですが、セルは下・右に移動させるため変数としています。 例えば、Sheet_1シートA列のrow_1を1-10までDO文でまわす場合に、行も数字で表記されてしまうため下記では参照式が成立しません。  cell_formula = "Sheet_1!" & row_1 & col_1  ActiveCell.Value = "=" & cell_formula 上記だと「cell_formula = Sheet_1!11」となってしまい、希望する「Sheet_1!A1」とならないのでエラーとなります。 間に変換式を入れることで、「Sheet_1!A1」と変えられないでしょうか? 説明が悪いようでしたら補足しますので、よろしくお願い致します。

  • Excell 合計 条件

    Excellの関数について質問があります A列   B列 TRUE  0.38 TRUE  0.45 FALSE  0.29 FALSE  0.31 TRUE  0.45 このとき、B列のTRUEのときの合計、B列のFALSEのときの合計の求めるとき、数式や関数の使い方を教えて下さい。 sumifではうまくいきませんでした。

  • 対象月を抽出して必要項目だけを表示させるには

     下図【ワークシート1】のようなリストから、対象月をワークシート2に抽出させたいのですが、ワークシート2は即印刷可能な形式とするため、対象月を単純に抽出するのではなく、必要な項目だけを抜き取りリスト化させるマクロを実現させたいと考えています。  高度なマクロはまるっきり分からないので、ご教示願います。  なお、対象月は下図例では2月分を抽出させるため「2009/2/?」と記載してありますが、抽出させるために入力する形式は拘りません。 (例えば「<2009/2/1,>2009/2/28」と言った表現でも結構です) 【ワークシート1】  A列  B列   C列   D列  E列  F列   ・・  X列 1 A店 商品a 2009/1/10 承認 山田 2009/1/11 ・・ 鈴木 2 B店 商品b 2009/2/5  否認 田中        ・・ 松田 3 C店 商品c 2009/2/20 否認 鈴木        ・・ 本田 4 B店 商品a 2009/2/25 承認 田中 2009/2/27 ・・ 山本 5 A店 商品c 2009/3/1  承認 加藤 2009/3/2  ・・ 大石 【ワークシート2】上の任意の場所  (例えばA1) 2009/2/? 【ワークシート2】出力例   A列  B列  C列  D列    E列 10 B店 商品b 否認       松田 11 C店 商品c 否認       本田 12 B店 商品a 承認 2009/2/27 山本

  • エクセルVBAで列名が#N/Aとなった列を削除するプログラムはどのように組めばよいのでしょうか?

    エクセルVBAで列名が#N/Aとなった列を削除するプログラムはどのように組めばよいのでしょうか? 下記のような表です。    A      B      C      D・・・・・ 1 イチゴ   #N/A    リンゴ   #N/A 2  100     1      75      1 3  250     2      50      4 4  150     2      25      5 ・        ↓    A      B  ・・・・・ 1 イチゴ   リンゴ  2  100     75 3  250     50 4  150     25 ・ よろしくお願いいたします。

このQ&Aのポイント
  • デジカメde!!ムービーシアター5でiPhone8・iPhone10で撮影した動画を挿入できません。
  • 挿入しようとすると『読み込めない形式のファイル追加をキャンセルしました』という警告メッセージが表示されます。
  • ファイル形式の変換を試みましたが、挿入することができません。どうすれば良いでしょうか?
回答を見る

専門家に質問してみよう