エクセルでA列に文字形式の数字があります.

0123
12345
234567
この文字形式の数字を仮に7桁で統一したいとします.
先頭に足りない桁は0を付加します.
変換後
0000123
0012345
0234567
このようにしたいのです.
列にあるデータごとに0を桁数分だけ付加していけばいいのですが
このようなデータがたくさんあるので
なにかいい方法がありましたら教えてください.
お願いします.

A 回答 (3件)

「見た目」ではなく、「値そのもの」を7桁にする方法です。



B列が空いているとします。
空いてなければ一時的にB列を追加してください。
データはA列(A1~)にあるものとし空白行は無いものとします。

1.セルB1に式「=TEXT(A1,"0000000")」を入力します。
2.セルB1の右下隅に黒い四角(フィルハンドルといいます)があるので
  これをダブルクリックすると下方向へコピーされます。
3.コピー結果が選択されているので、その領域内でコピーします。
  Ctrl+Cでも右クリックからコピーを選択してもどちらでもOK。
4.セルA1を選択し、右クリックから「形式を選択して貼り付け」を選択。
5.「値」をクリックしてボタン[OK]をクリック。
6.不要ならB列を削除してください。

いかがですか?
    • good
    • 0
この回答へのお礼

ありがとうございます.
自力でどうにかなりました.

お礼日時:2002/03/14 18:13

A列に数字が並んでいるとして、B列B1に


=MID("0000000",1,7-LEN(A1)) & TEXT(A1,"0")
と数式を入力し、B2以下に複写する。セルの書式の
配置を右詰に設定する。
Basicとか他の言語でもこの理屈は使えると思います。但しTEXT(A1,”0”)の部分はStr(A)です。
文字列切りだし、文字列の長さ、数値を文字列化は
関数として必ず備わっているので。
    • good
    • 0
この回答へのお礼

ありがとうございます.
自力でどうにかなりました.

お礼日時:2002/03/14 18:14

セルの書式設定→ユーザー定義で


種類のところに桁数の数だけ0を入力すればOKです
例えば7桁にしたいときは「0000000」と入力します。
複数セルの場合は、範囲指定して書式設定を選択すればいいです。
    • good
    • 0
この回答へのお礼

ありがとうございます.
自力でどうにかなりました.

お礼日時:2002/03/14 18:13

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

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

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

Q小学生算数 「上から2けた」の考え方

小学生算数 「上から2けた」の考え方

お世話になります。
数学のカテゴリで恐縮ですが、小学生の子供に算数を教えていてわからなかったので教えてください。
答えを上から2けたのおよその数で答えなさい、というときに、計算結果が0.536になった場合は、小数第1位を上から1けた目と考えて、小数第3位の6を四捨五入して0.54とすればよいのでしょうか?
1のくらいの「0」を1けた目と数えていいのかどうか、わからなくて質問させていただきました。よろしくお願いいたします。

Aベストアンサー

小数の場合、「上から?桁」はゼロを無視して数えます。

例)0.00829の上から2桁の概数 → 0.0083

Q数字の下1桁について0~4は0、5~9は8にする方法

はじめまして。EXCELでの質問です。

A列に数値が並んでいて、その数字の下一桁に対し0~4は0に、5~9は8にして、全体を表示させる方法を教えてください。
(例:1234の場合、下1桁は4ですので、4は0~4の間にあるので、表示としては1230になり、1239の場合、下1桁は9ですので、9は5~9の間にあるので、表示は1238としたいんですが?)
簡単にできる方法はありますか?

早急に変更依頼がきておりますので何卒、よろしくお願いします。

Aベストアンサー

A1にデータが入っているとして
=QUOTIENT(A1,10)*10+(MOD(A1,10)>=5)*8
または
=A1-MOD(A1,10)+(MOD(A1,10)>=5)*8
でOK。

どっちかと言うと、下の方が好み。

Q小学生の算数問題です

子どもが塾で出された課題です。
「0から9までの数字を1回づつ使用して、4けた+2けた=4けたの式が成り立つものをすべたあげなさい。」
4通りは発見できたのですが、はたして全部で何通りあるかもわかりません。
どなたか助けて下さい。

Aベストアンサー

ABCD+EF=GHIJ とすれば、
B=9
H=0
A+1=G

また、各桁の偶奇を調べると、
偶+偶=偶、偶+奇=奇、奇+奇=偶
なので、繰り上がりを考えないと、奇数の数は偶数個でなければなりません。
0~9のうち奇数は5個なので、繰り上がりしている桁は奇数個あることになります。
2桁目、3桁目は繰り上がりしているので、1桁目も繰り上がりしています。

以上のことを踏まえて、
CとE、DとFは交換しても和は同じなので、C>E、D>Fとして、
2桁目の組み合わせを調べると、
A92D+8F=G01J (3,4,5,6,7)
A93D+7F=G01J (2,4,5,6,8)
A93D+8F=G02J (1,4,5,6,7)
A94D+6F=G01J (2,3,5,7,8)
A94D+7F=G02J (1,3,5,6,8)
A94D+8F=G03J (1,2,5,6,7)
A95D+6F=G02J (1,3,4,7,8)
A95D+7F=G03J (1,2,4,6,8)
A95D+8F=G04J (1,2,3,6,7)
A96D+7F=G04J (1,2,3,5,8)
A96D+8F=G05J (1,2,3,4,7)
A97D+8F=G06J (1,2,3,4,5)
の12通り。(括弧内は残りの数字)

さらにそれぞれの組み合わせを調べると、

4926+87=5013
5934+78=6012
5934+87=6021
2947+68=3015
5943+78=6021
1956+78=2034
1956+87=2043
1965+78=2043
2964+87=3051
の9通り。

1桁目、2桁目を交換したものも加えると、合計36通りとなります。

ABCD+EF=GHIJ とすれば、
B=9
H=0
A+1=G

また、各桁の偶奇を調べると、
偶+偶=偶、偶+奇=奇、奇+奇=偶
なので、繰り上がりを考えないと、奇数の数は偶数個でなければなりません。
0~9のうち奇数は5個なので、繰り上がりしている桁は奇数個あることになります。
2桁目、3桁目は繰り上がりしているので、1桁目も繰り上がりしています。

以上のことを踏まえて、
CとE、DとFは交換しても和は同じなので、C>E、D>Fとして、
2桁目の組み合わせを調べると、
A92D+8F=G01J (3,4,5,6,7)
A93D+7F=G01J...続きを読む

Q例えば、AさんからGさんまでがA列に縦に並んでいてB列に数字が入っています。B列にある数字の合計をA

例えば、AさんからGさんまでがA列に縦に並んでいてB列に数字が入っています。B列にある数字の合計をA-Gさん別々に出したいんですが簡単なvbaの記述方法はないでしょうか?
お願いします。

Aベストアンサー

こんばんは!

A列のA~Gさんは複数存在しているのでしょうか?
そうであればSUMIF関数で対応できると思いますが、VBAをお望みだというコトですので
一例です。

元データはSheet1にあり、Sheet2に表示するとします。
尚、Sheet1の1行目は項目行でデータは2行目以降にあるという前提です。
標準モジュールにしてください。

Sub Sample1()
Dim lastRow As Long, wS As Worksheet
Set wS = Worksheets("Sheet2")
wS.Cells.ClearContents
With Worksheets("Sheet1")
.Range("A:A").AdvancedFilter Action:=xlFilterCopy, copytorange:=wS.Range("A1"), unique:=True
lastRow = wS.Cells(Rows.Count, "A").End(xlUp).Row
With Range(wS.Cells(2, "B"), wS.Cells(lastRow, "B"))
.Formula = "=SUMIF(Sheet1!A:A,A2,Sheet1!B:B)"
.Value = .Value
End With
End With
End Sub

こんな感じではどうでしょうか?m(_ _)m

こんばんは!

A列のA~Gさんは複数存在しているのでしょうか?
そうであればSUMIF関数で対応できると思いますが、VBAをお望みだというコトですので
一例です。

元データはSheet1にあり、Sheet2に表示するとします。
尚、Sheet1の1行目は項目行でデータは2行目以降にあるという前提です。
標準モジュールにしてください。

Sub Sample1()
Dim lastRow As Long, wS As Worksheet
Set wS = Worksheets("Sheet2")
wS.Cells.ClearContents
With Worksheets("Sheet1")
.Range("A:A...続きを読む

Q小5算数パズルの宿題が解りません。

1から9までの数字を1回ずつ使用し、5けたひく4けたの筆算式を2つ作り、
それぞれの答えが22222と33333になる筆算式を作ります。

     □□□□□
   -  □□□□
     2 2 2 2 2

     □□□□□
   -  □□□□
     3 3 3 3 3 

どうしても解けません。助けてください。

 

Aベストアンサー

回答例です。

31874
9652
22222

41286
7953
33333

QEXCEL:3桁以上の数字の下1桁について0又は5にする方法

こんにちは。EXCELでの事務処理に困っております。

3桁以上の数字を入力し(例:253)、その数字の下一桁に対し0~4は0に、5~9は5にして、全体を表示させる方法を教えてください。(例:253の場合、下1桁は3ですので、3は0~4の間にあるので、表示としては250になります)

よろしくお願いします。

Aベストアンサー

マイナスも対象にしてみました。

=IF(A1<0,FLOOR(A1,-5),IF(A1>0,FLOOR(A1,5)))

Q小3の算数


1.2.3.4.5.6
1~6までのカードが1まいづつあります。
このカードを使って、
(3けた)-(3けた)の式を作りなさい。
Q1答えが111になる式はなんでしょうか?
 (111になるようにしましょう 答えは6パターンあります)
Q2答えが一番小さくなるのは?


よろしくお願いします。

Aベストアンサー

1
246-135 264-153 426-315 462-351 624-513 642-531
隣り合う数字を引けば1になることに気づく。それをうまくならべる方法。パターンをもれなく数え上げるコツ。こんなところを学ぶ問題でしょうか。

2
ほんとはマイナスの数字がいちばん小さいですが、小3ですからそれは考えないんでしょう。だとすると、

100の位は隣り合う数にすべきだというのをまず思いつく。
で、残りの10の位と1の位の数字で、できるだけ、引かれる方を小さく、引く方を大きくするのがいいなと考えるんでしょう。
そうすると65がいちばんでかくて、12がいちばん小さい。のこりの3と4で100の位を作ろう。

みたいな感じでしょうか。
412-365

Qエクセル マクロ教えて下さい。 2桁以上の数字をカンマで区切りたいです。 0→0 1→1 12→1,

エクセル マクロ教えて下さい。 

2桁以上の数字をカンマで区切りたいです。
0→0
1→1
12→1,2
123→1,2,3
12345→1,2,3,4,5
35214→3,5,2,1,4

1桁はそのままです。

ただし選択した範囲だけを変えたいです。

コードを解説付きでお願いします。

Aベストアンサー

こんにちは!

そのセル内で処理したいのでしょうか?
一例です。

Sub Sample1()
Dim k As Long, c As Range, myStr As String
For Each c In Selection
If IsNumeric(c) And c > 9 Then
If InStr(c, ",") = 0 Then
For k = 1 To Len(c)
myStr = myStr & Mid(c, k, 1) & ","
Next k
c = Left(myStr, Len(myStr) - 1)
myStr = ""
End If
End If
Next c
End Sub

※ コードの説明は割愛させてください。m(_ _)m

こんにちは!

そのセル内で処理したいのでしょうか?
一例です。

Sub Sample1()
Dim k As Long, c As Range, myStr As String
For Each c In Selection
If IsNumeric(c) And c > 9 Then
If InStr(c, ",") = 0 Then
For k = 1 To Len(c)
myStr = myStr & Mid(c, k, 1) & ","
Next k
c = Left(myStr, Len(myStr) - 1)
myStr = ""
End If
...続きを読む

QACCESSで10桁の中から中の3桁を抜き出す関数

ACCESSで7けたの数値7654321から765の部分3桁と43の部分の2桁、21の桁を分けて抜きとりたいのですが、どういう関数を使ったらよいかわかりません、LEFT関数を使ってみたりしたのですがどうも欲しいものが取り出せないので基礎的なことですが教えてください
よろしくおねがいします

Aベストアンサー

クエリのデザイングリッドの「フィールド」のセルに

a: [x] \ 10000
b: ([x] Mod 10000) \ 100
c: [x]-[a]*10000-[b]*100

と入力してください。ここで、x は 7654321 などが入っているフィールドの名前、a, b, c は計算結果が入るフィールドの名前です。

7654321 に対しては、a に 765、b に 43、c に 21 が得られます。

Qエクセルで、セルの列幅内に収まらない桁があっても、全ての桁を表示する方法がありますか(列の幅を変えずに)。

初めまして。

文字入力と数値入力の量が半分半分くらいの資料をエクセルで作成しております。

資料の体裁を後で調整しやすいように、列の幅を全て【1】にして作業しております。

数値を入力する際、セルの列幅内に収まりきらない桁があると「####」と表示され困っております。

調べてみると、列の幅を桁数に応じて変更する方法は紹介されていましたが、列の幅は変更したくありません(列の幅は【1】にしておきたいです)。

列の幅を変えずに全ての桁を表示する方法を教えて下さい。

よろしくお願い致します。

Aベストアンサー

列の幅が1では、そもそも無理では?
文字を小さくしても収まらないと思います。
一番右の列以外は、次の列の表示が重なるので
見えなくなります。
【折り返して全体を表示】はしたくないのですよね?

ただ####とならない様にする方法ならあります。
※当然列の幅が足りない桁は隠れて見ることが
 出来ないです。

数字の前に【'】をつけるてみて

例)
   A列  B列  C列
1行 '1234 '1111 '0001
2行 '1111 '1111 '0001


また、これらの数字の計算結果も####にしたくない場合は、
TEXT関数を使ってください。

=TEXT(A1+A2,"標準") 等で


人気Q&Aランキング

おすすめ情報