エクセルですでに半角で入力されている数字を全角数字に一括変換する方法はありますか?

(1)住所録で半角入力されている番地等の数字のみをを全角に変換する方法
(2)電話番号など、全て数字で入力しているセルを一括で全角に変換する方法

このQ&Aに関連する最新のQ&A

A 回答 (2件)

両方とも「=JIS(文字列)」でできます。



参考:日経PC21 / 全角を半角に変換する
http://pc.nikkeibp.co.jp/pc21/tech/excel36/28/in …
    • good
    • 1
この回答へのお礼

NymphLuna様

早速回答を頂き、ありがとうございます!
出来ました!
本当にありがとうございました!!!

お礼日時:2007/12/21 19:37

一括ではありませんが(10回行う必要があります)



編集 → 置換 で半角の数字を全角の数字に置き換えては如何?

マクロも関数も書く必要がありませんのでファイルサイズが大きくなる事もありません。
    • good
    • 3
この回答へのお礼

Cupper様

ありがとうございます。
Cupper様から頂いた回答なら、関数を覚えなくてもできますね。
関数が苦手な私には簡単にできる方法で、助かりました。

お礼日時:2007/12/21 19:44

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q【Excel】 全角(数字だけ)を半角にしたい

住所の表を整理しているのですが、数字が全角になっているので、半角に変換したいと思い、ASC関数を使ったのですが、カタカナまで半角になってしまいました。
カタカナは全角で、数字だけ半角にしたいのですが。。
数字だけを半角にする方法ってないんでしょうか?

Aベストアンサー

問題は解決済みと思いますが、数字のみ全角→半角にするマクロです。ご参考まで。

Sub MacroR()
Dim idx As Integer, trg As Range
 Set trg = ActiveSheet.Cells.SpecialCells(xlCellTypeConstants, xlTextValues)
 For idx = 0 To 9
  trg.Replace What:=Right(StrConv(str(idx), vbWide), 1), _
   Replacement:=Right(str(idx), 1)
 Next
End Sub

マクロはALT+F11でVBE画面を開き、「VBAProjectエクスプローラのシート名右クリック」→「挿入」→「標準モジュール」で表示される画面にペーストして下さい。実行はALT+F8を押して、マクロ名を選択します。

Qエクセルのセル内に全角数字を入力したいのにエンターを押すと自動で半角になってしまいます。

お世話になっております。
エクセルのセルに「202」と全角で入力したいのですが、全角で入力してもエンターを押すと勝手に半角数字に切り替わってしまいます。
全角のまま入力する方法はありますか?
アドバイス宜しくお願い致します。

Aベストアンサー

単純に全角にしたいのなら
セルの書式設定→表示形式(分類<文字列>)

でなります。

QExcelで全角の数字が半角になってしまう

Excelで住所録をつくっているのですが、住所2の項目に番地を全角の数字で入れたいのですが、全角で入れても、半角になって、右揃えになってしまったり、2003/1/5のような表記や、Jan-15のような表記になってしまったりします。全部がそうなるわけではないのですが、ところどころそのようになってしまいます。どうしてなのでしょうか?また、どのようにしたら、ちゃんと入力できるのでしょうか?教えてください。住所録はOSがWindows MeのパソコンでExcel2000で作ったものを、XPのパソコンでExcel2003で読み込んで編集しようとしてるのですが、それが原因でしょうか?

Aベストアンサー

多少はしょって説明すると、エクセルのセルは「数字・数式」もしくは「文字列」のいずれかが入ります。全角数字は文字列なのですが、全角数字だけしか入れなかった場合には「数字」として認識されます。数字は半角です。

数字が入ったセルは、表示形式により年月日や時間などに変換されて表示されます。

全角の数字のみを文字列として入れたい場合には数字の前に ’ を入れてから入力すると文字列として表示されます。尚 ’ は表示されません。

もうひとつの方法は、全角数字を文字列として入れたいセルを選択し、右クリックでセルの書式設定を選び、表示形式のタグで文字列を選び、OKを押し、全角数字を入力してみてください。 ’ なしでも全角数字が文字列として入力されるはずです。

Qエクセルで住所の半角数字を漢数字に一括変換するには?

 エクセル87で住所録を作って「1-2-34」等と入力していますが、それをワード98のはがき宛名印刷で印字すると「1-2-34」が横になります。
 エクセルで住所の列だけ「1-2-34」を「一-二-三四」などのように一括で漢数字に変換したいのですが、簡単な方法はあるでしょうか? よろしくお願いします。

Aベストアンサー

表示形式=TEXT(C1,"[DBNum1]G/標準")などはC1セルが半角数字で無いと上手く行かないようです。住所を数字部分と漢字部分に部分に別セルに分けられれば使えるかもしれない。
住所漢字部分と丁目番地が1セルに混在しているときのために、数字を漢数字に変える、ユーザー定義の関数を作ってみました。
ツール-マクロ-BVEでVBEの画面になる。
そこで挿入-標準モジュールで出てくる画面に下記を
コピペする。
Function kansuj(a)
tb = Array("〇", "一", "ニ", "三", _
"四", "五", "六", "七", "八", "九")
For i = 1 To Len(a)
s = Mid(a, i, 1)
'---ハイフン
If s = "-" Then
st = st & "-"
GoTo p01
End If
'----数字 全角、半角
If IsNumeric(s) Then
If s >= "0" And s <= "9" Then
p = Application.WorksheetFunction.Asc(s)
st = st & tb(p)
GoTo p01
Else
st = st & tb(Val(s))
GoTo p01
End If
End If
'----その他全角文字
st = st & s
p01:
Next i
kansuj = st
End Function
使い方はA列に住所があるとして、B1に
=kansuj(A1)といれてB2以下に式を複写する。
(結果)
大田区目黒123-1大田区目黒一ニ三-一
関東1-23関東一-ニ三
三七,六五三三七六五三
一一
三八,〇四八三八〇四八
あ1-2-3あ一-ニ-三
三七,六五三三七六五三
2no3ニno三
三三
1-2-3一-ニ-三
二三四ニ三四
1-2一-ニ
大阪市中央区道修町2-34大阪市中央区道修町ニ-三四
ASC234ASCニ三四
0〇

表示形式=TEXT(C1,"[DBNum1]G/標準")などはC1セルが半角数字で無いと上手く行かないようです。住所を数字部分と漢字部分に部分に別セルに分けられれば使えるかもしれない。
住所漢字部分と丁目番地が1セルに混在しているときのために、数字を漢数字に変える、ユーザー定義の関数を作ってみました。
ツール-マクロ-BVEでVBEの画面になる。
そこで挿入-標準モジュールで出てくる画面に下記を
コピペする。
Function kansuj(a)
tb = Array("〇", "一", "ニ", "三", _
"四", "五", "六", "七", "八...続きを読む

Qexcelからexcelへの差し込み印刷

お世話になります。

excelでwordへの差し込み印刷をよく利用するのですが、
同様に、
excelのデータをexcelに流し込んで印刷する方法はありますでしょうか。

excelの名簿のデータを
excelの表のフォーマットに流し込んで
1人づつ印刷したいのですが。

お分かりの方いらっしゃいました教えてください。
どうぞ宜しくお願い致します。

Aベストアンサー

イメージはわかるが、エクセルに差込印刷の機能はありません。
ワードなどと違ってA.X氏1人分書類シート作成、B印刷、Aのシートををy氏分のデータでシート内容(セル)を置き換え、印刷、の繰り返しをします。
ーー
例データ Sheet1 A1;D3
連番氏名住所品物
1山田 三郎東京都江東区かばん
2植田 健横浜市港北区帽子
A列はこのたび連番を振りました。
Sheet2   に送り状の書式を体裁よく作ります。
H1セル(どこでも良いが、下記のVLOOKUPの式は変わる)

送り状

住所X
氏名Y

品物Z

上記の品をお送り申し上げます。
ご査収ください

以上
Xの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,2,FALSE)
Yの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,3,FALSE)
Zの場所のセルに =VLOOKUP($H$1,Sheet1!$A$1:$D$3,4,FALSE)

---
結果

送り状

住所山田 三郎
氏名東京都江東区

品物かばん

上記の品をお送り申し上げます。
ご査収ください

以上
ここで
VBE画面で標準モジュールに
Sub test01()
For i = 1 To 2 '人数分
Range("H1") = i
Range("A1:G20").PrintOut '印刷範囲は各人同じとする
Next i
End Sub
を張り付け、実行する。
山田、植田分の紙が2枚印刷されました。
これは質問者はVBAの経験も無いでしょうと、最低限にしてあります。
VBAを勉強してください。
別ブックにある名簿を対象などは複雑になるので避けています。

イメージはわかるが、エクセルに差込印刷の機能はありません。
ワードなどと違ってA.X氏1人分書類シート作成、B印刷、Aのシートををy氏分のデータでシート内容(セル)を置き換え、印刷、の繰り返しをします。
ーー
例データ Sheet1 A1;D3
連番氏名住所品物
1山田 三郎東京都江東区かばん
2植田 健横浜市港北区帽子
A列はこのたび連番を振りました。
Sheet2   に送り状の書式を体裁よく作ります。
H1セル(どこでも良いが、下記のVLOOKUPの式は変わる)

送り状

住所X
氏名Y

品物Z

...続きを読む

Qエクセルで日付を全角にしたい

エクセルで日付を「平成19年10月4日」のように、
全角表示にしたいのですが勝手に半角になってしまいます。
どうしたら全角になるのでしょうか。

Aベストアンサー

対象セルの書式設定→表示形式タブ→ユーザ定義で以下の書式を設定して下さい。
[DBNum3]ggge"年"m"月"d"日"

Qエクセルで文字間隔・行間隔の調整の方法を知りたい

Microsoft Excel 2010を使っています。
エクセルのセルの中での文章入力の際に文字間隔と行間隔を変更したいのですが、その方法が解りません。教えてください。

Aベストアンサー

エクセルはワープロ「ではない」ので、そういった細かな微調整をする機能はありません。
どうしてもそういった飾りが必要なら、餅は餅屋でワープロソフトを使ってください。


敢えて行うとすれば

>文字間隔

セルの書式設定の配置の横位置を「均等割り付け」にしておき、セル(列)の横幅によって調整します
文字間隔を「狭める」機能はありません。



>行間隔

こちらも同様に、セル内の行間隔を「狭める」機能はありません。セルの書式設定の配置の縦位置を「均等割り付け」にして、行の高さを高くします。

セル内にたとえば3行記入してあったとしたら、それを3行の、つまり上下3つのセルに分割して記入します。この3行の行の高さを調整してください。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qエクセルで重複しているデータの抽出のしかたを教えてください。

エクセルで重複しているデータを抽出したいのですが・・。なにぶん初心者なもので簡単な方法があればよいのですが・・。
A列に日付 B列に企業名このデータが300件ほどあります。

 Å列      B列
1月 1日    AAAA社
1月 4日   BBBB社
1月 8日   CCCC社
2月 1日   BBBB社
2月20日    DDDD社
3月 2日   AAAA社

と、あるとしてB列の企業名が重複しているものを抽出したいのですが・・・。この場合 AAAA社とBBBB社ですが。
これを簡単に抽出する方法はないでしょうか?
教えてください お願いいたします。

Aベストアンサー

企業名がセルB2からセルB300まで入力されていると仮定します。
セルC2に IF(COUNTIF($B$2:B2,B2)>1,"*","") を入力し、セルC300までコピーして下さい。すると重複したデータの二番目以降に "*" のマークが付きます。
(注) 数式を下のセルまでコピーするため、COUNTIF($B$2 は絶対参照にして下さい。

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報