重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

表計算ソフトでこのような事できますでしょうか

Alt+0128とワードパッド等にタイプするとユーロの通貨記号が出てくると思います。
このようにAlt+数字で文字が表示されます。それでエクセルなどで
下のような感じでAlt+0100からAlt+1000まで一度に表示させたいのですが、
どうすれば出来るでしょうか。全て手入力は手間がかかります…
|A  |B  |C
---------------
1|0131|?  |
---------------
2|0132|?   |
---------------
3|0133|… |

A 回答 (7件)

Excel2002のヘルプには記載されていたと思います。


確認した事がありましたが、結果が出なかった機能です。
Excel2007では結果が得られました。

CHAR関数で文字コードを文字に変換できます。
残念ながらUnicode仕様ではない様です。

VBAではどうでしょうか。
A1以下に文字コードがあると仮定しています。
実行するとB列に文字を書き出します。
WindowsXpで、Excel2002とかならUnicodeに対応しているので表示されると思います。
もちろんフォントの問題もあります。

Dim myRng As Range
Dim c As Range

Set myRng = Range("A1", Range("A" & Rows.Count).End(xlUp))
For Each c In myRng
c.Offset(, 1).Value = ChrW("&H" & WorksheetFunction.Dec2Hex(c.Value))
Next
    • good
    • 0

えーと、何から説明したものか迷いますが、ちょっとお付き合いください。



1)
ALT+数字で入力できる文字はWord及びWordpadとその他の一般ソフトで異なります。
また、OSの言語によっても異なります。
一般ソフトでは、その言語固有の文字コードの文字が出ます。日本語であればShift_JIS(の亜種)、英語であればLatin-1(の亜種)及びMicrosoftCodePage437です。ただしShift_JISで文字がない場所ではLatin-1が出ます。
一方、Word(pad)では日本語ではLatin-1の亜種及びUnicodeの文字が出ます。英語は知りません。

2)
英語の一般ソフトと日本語のWord(pad)での2種類の文字コードの使い分けは頭に0を付けるか否かです。
Latin-1やCodePage437の文字コードは256番までしかありませんので、これで区別できます。
256までの数字に0を付ければLatin-1、0を付けないか257以上の数字ならLatin-1でないコードです。

3)
本来のLatin-1の文字コードはUnicodeの256番までと同一です。
しかしWindowsで使われているものはLatin-1の亜種でWindows-1252と呼ばれるものです。
これはLatin-1では普通の文字として使えなかった128~159の範囲に様々な文字を入れたものです。

4)
char関数は恐らく、その言語固有の文字コードを参照し、Alt+数字の場合と違って文字のないコードではWindows-1252にせず空白にします。


というわけで、
多分あなたの求める表は
http://en.wikipedia.org/wiki/Windows-1252

http://ja.wikipedia.org/wiki/Unicode%E4%B8%80%E8 …
を繋ぎ合わせればできます。ただし2つ目は16進数で書かれているので10進に直してください。

No3さんの方法でも128~159以外は作れるでしょう。
    • good
    • 0
この回答へのお礼

長文おつかれです。すごい知識量ですね。
自分が入力してたのはWindows-1252というものだったのですか。
おおその二つの表から求めたい表は作れますね。
No3さんの方法でも最初以外は問題なく作れました!

お礼日時:2010/02/18 00:41

回答番号:No.3に追記です。



マクロの実行結果を確認しました。
0128 のところでユーロ記号に変換されていませんでした。
ユーロ記号の文字コードは、
Unicode:0x20AC
ですから、10進数に変換すると
8364
になりますから当然の結果だと思います。
役に立たなかった様です。

目的が解れば違った回答が考えられるかも知れません。
    • good
    • 0
この回答へのお礼

CHAR関数のようにできたら理想的なんですけどね。
0128は文字コードではないんでしたね・・・8364でも表示されますね。
忘れてましたがAlt+コードはAltを押しながらテンキーで数値を入力する必要があります。
目的はソフトの練習も兼ねてAlt+0100~1000までで作られる文字の表を作ることです。
すべてのコードのUnicodeがわかればいいですかね…

お礼日時:2010/02/17 21:41
    • good
    • 0
この回答へのお礼

おおそうですね。ですが網羅性がもっとほしいです。

お礼日時:2010/02/17 21:21

http://translate.google.co.jp/translate?hl=ja&la …
少し文字が違いますが こういうことですよね。
    • good
    • 0
この回答へのお礼

うーん入力する文字は4桁になります・・・

お礼日時:2010/02/17 21:20

Alt+0128とワードパッド等にタイプしても、私のパソコンでは出てこないのですが...。


キーボードやパソコンによって異なるので、ちょっと無理なのではないでしょうか。

この回答への補足

画像を添付するべきでしたね。これは手入力したものですが、こんな感じにしたいです。
http://www.dotup.org/uploda/www.dotup.org662762. …

Alt キー コードと言われています。Unicodeが使えれば出来るのと思うのですが・・・
フォントが問題化も知れません。$JSゴシックではどうでしょうか。私はwindowsXPです。
因みに質問の二つの?は実際に表示される文字ではありません。

補足日時:2010/02/17 20:04
    • good
    • 0

すみません。

質問の意味がよく分かりませんが。

セルに上から順に 1 2 と書きますよね。
書いたセルを上から下にドラックさせると、1 2 と書いたセルを選択できます(セルが青くなる)
手を離して選択したセルの右下にカーソルを合わせると+が出ますのでドラックしたまま下へ移動させると続きの 3、4、5、6、7となります。横に書くのも同じ方法で出来ますが。
これと違いますか?
初歩的な事ですが。
違っていたらごめんなさい。

この回答への補足

画像を添付するべきでしたね。これは手入力したものですが、こんな感じにしたいです。
http://www.dotup.org/uploda/www.dotup.org662762. …
単純に数字を順番に増やしたいわけではないです。上の画像を例としてプログラム的に説明すると、

yを行数として、(縦の数字です)
Ayに含まれる値を「"Alt+Ay"と入力して表示される文字」をByに表示させる。

わかりにくいですが、こんな感じです。
マクロを使えばなんとかできそうだなと思ったんですけど・・・

補足日時:2010/02/17 19:57
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!