エクセルの「ファイル-開く」からファイルを選択し、
「テキストファイルウィザート」を使えば
正しく読み込めることは確認済みなのですが、
エクスプローラーからクリックすると
頭の0が数字として扱われてしまい
勝手に0が省略されてしまいます。
これをデフォルトでは文字列として扱うように
前もって制御することはできないのでしょうか?
よろしくお願いいたします。

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

A 回答 (6件)

ごめんなさい。


わざわざスペースを入れなくとも、 '0015 のまま読み込んで、クォーテーションマーク(')をそのまま同じ(')に置換すればいいんですね。
    • good
    • 0

どういうことをもって「前もって制御する」ということなのかわかりませんが、CSV


ファイルの加工が許されるのでしたら、CSVデータを、
クォーテーションマーク+半角スペース+数値、つまり、 ' 0015 のように作成します。
そのCSVファイルをダブルクリックしてエクセル化すると、同じく ' 0015 と表示
されますので、置換処理で、検索する文字=半角スペース 、置換後=ブランク、として
一括置換します。

なんていうことで、どうでしょうか。
    • good
    • 0

>実際には(データとしては)不要な文字が入っていることになります。

に反するかもしれませんが、エクセルで確実に文字と認識させるには、先頭に「’」を入れるので、考えつきました。
(1)そのCSVファイルの最初のフィールド(エクセルに読みこんだとき、A列に来るフィールド)に0で始まるデータがあるときは、エクセルのVBEを開き、標準モジュールを挿入し下記を貼りつけ、実行してください。
Sub test01()
Open "test02.csv" For Input As #1
Open "test03.csv" For Output As #2
p01:
If EOF(1) Then GoTo p02
Line Input #1, a
Print #2, "'" & a
GoTo p01
p02:
Close #1
Close #2
End Sub
インプットファイル名、アウトプットファイル名やPATHは適当に変えてください。
(2)エクセルに読みこんだとして、第2列以後にくるフィールドで「0を先頭に含む数字」がある場合は、置換機能のあるEDITORソフト(WORDPADでも良さそう。メモ帳はだめ。)を使って、「,0」を「,’0」に置換して、一旦保存し、エクセルで開いてください。
(3)エクセルに読みこんで、「’」が残り、目障りの場合は、「’」を「’」で(同じ文字で)置換すると、見えなくなるようです。
    • good
    • 0

申し訳有りません


>エクスプローラーからクリックすると
を見落としていました。

下記全く的外れですね。
出直してきます…
    • good
    • 0

EXCEL2000の場合の例です。



テキストファイルウィザード3/3
「区切ったあとの列のデータ形式を選択して下さい。」
という画面、

画面下側「データのプレビュー」で対象となる列、または全列を
選択(反転)し、画面右上「列のデータ形式」のラジオボタンを
「G/標準」(デフォルト)から「文字列」に変更します。
これで「完了」を押せばOKです。

例えば「0123」もそのまま文字列「0123」として読み込まれます。
文字列扱いなので左寄せになります。


但し、
0123,0456_,_0789
のようにカンマの前後に空白が有る場合は、それもデータとして
扱われます。

これを回避するにはテキストファイルウィザード2/3の区切り
文字指定の所で「カンマ」「スペース」両方をチェックし、更に
「連続した区切り文字は1文字として扱う」にもチェックします。

この場合は、空欄としてのデータを扱えなくなる弊害が出ます。
空欄が有り得ないなら問題有りませんが…

この辺りは御自分でサンプルファイルを読み込ませて試してみる
方が早いと思います。
    • good
    • 0

ダブルクォートでくくっておく


ってのはどうでしょうか?

もしかしてエクセルの設定でですか??

この回答への補足

はい。ダブルクォートでくくってしまうと
ダブルクォートも表示されてしまいますし、
実際には(データとしては)不要な文字が入っていることになります。
あくまで表示だけを変えたいのですが
よい方法があれば教えてください。

補足日時:2003/10/20 14:32
    • good
    • 0

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

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

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

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q通貨で0円と表示させ、かつ0として計算したい。

2007を使用しています。
タイトルのとおりなんですが、通貨に設定したセルでかつ0として入力し、¥0と表示させかつそのセルから導き出される数字にも0を表示させることは可能ですか?

Aベストアンサー

>0だとセルに何も表示されません><
>どこか設定をいじってしまったのでしょうか?

左上の丸い[Officeボタン] ⇒ 右下の[Excelのオプション]
⇒左側の[詳細設定] ⇒ [次のシートで作業するときの表示設定]
⇒[ゼロ値のセルにゼロを表示する]にチェックが入っているか確認してください。

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

QCELLを結合してファイル名として1データづつ別ファイルとして保存したい

EXCELLかACSECCで1レコード中の複数CELLを結合してファイル名とし、1レコードづつ別ファイルとして出力したいのですが、良い方法がありましたら宜しくお願いします。
例 
 会員NO 日付   -> 会員NO+日付.TXT 

Aベストアンサー

VBAを使うのが、王道でしょうが、Excelで1行1レコードみたいのだったら、
1)A列の前にセル1列を挿入。
2)以下の計算式を追加:
= "echo " & C1 & "," & D1 & "," & E1 & ">" & A1 & B1 & ".txt"

3)A列を全選択してCtrl-D。
4)必要なレコードを選択し、テキストファイルa.batにコピー&ペースト。
5)コマンドラインからa.batを実行。

――という手も。
この方法も、バッチファイルについての基礎知識が必要ですが。

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Q[色]+#,##0;[色]-#,##0;[色]0;@ と[<10]#.0;0 同時設定可能ですか?

よろしくお願いします
いつもgooの皆さんには大変お世話になっております
お陰様でエクセルが大分進歩しました
win8.1でエクセルは2013です

タイトルの通り、2つの書式は同時に設定できますか?
可能であればその書き方を教えていただけないでしょうか?
同時に設定したい書式は下記のとおりです

[色]+#,##0;[色]-#,##0;[色]0;@  と [<10]#.0;0 です

Aベストアンサー

こんばんは!

おそらくセルの書式設定のユーザ定義は最大3個までしか設定できなかったともいます。

ユーザー定義の欄に
[赤][<0]-#,##0;[青][<10]0.0;[青]#,##0;@
としてみてください。
① マイナスの場合のフォント色は「赤で3桁のカンマ区切り」
② プラスの場合で10未満の場合は「青で小数点以下一けた表示」
③ プラスで10以上の場合は「青で3桁のカンマ区切り」
その他(文字列)の場合は「自動」(黒)

以上のような表示になると思いますが、
「0」の場合の設定ができません。
「0」の場合の表示桁数は一桁でフォント色は「自動」がお望みなのではないでしょうか?
おそらく手動でのセルの書式設定のユーザー定義ではどれか一つを犠牲にする必要があるのではないかと思います。
(できる方法があればごめんなさいね。)

ただ、お望みの方法ではないかもしれませんが、
上記条件付き書式のセル変更があればマクロで書式を変えてやる方法があります。

マクロでやるとなるとわざわざセルの書式設定を手動でやる意味がないので
敢えて今回はこの程度で・・・m(_ _)m

こんばんは!

おそらくセルの書式設定のユーザ定義は最大3個までしか設定できなかったともいます。

ユーザー定義の欄に
[赤][<0]-#,##0;[青][<10]0.0;[青]#,##0;@
としてみてください。
① マイナスの場合のフォント色は「赤で3桁のカンマ区切り」
② プラスの場合で10未満の場合は「青で小数点以下一けた表示」
③ プラスで10以上の場合は「青で3桁のカンマ区切り」
その他(文字列)の場合は「自動」(黒)

以上のような表示になると思いますが、
「0」の場合の設定ができません。
「0」の場合の表示桁数は一...続きを読む

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Q7桁の時刻(00:00:00.0)のコンマ以下を省略する方法を分かる方教えて下さい!

エクセル初心者につき、教えて下さい!

7桁の時刻のコンマ以下を省略したいのですが、その方法を分かる方、教えて下さい!
例 18:34:32.5→18:34:32

Aベストアンサー

No.6です。
まだ解決していませんでしたか。

四捨五入ではなく切り捨てにしたいのであれば、
=TEXT(A1-"00:00:00.5","hh:mm:ss")*1
のように、丸めたい下の桁から5引いてから四捨五入されるようにするとよい。

TEXT関数で、数値に対して書式を指定して表示させ、1を掛けることで数値(シリアル値)に戻しています。
数式を入力したセルの表示形式をユーザー書式で "h:mm:ss" または "hh:mm:ss" にしてください。

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Q0割る0=#DIV/0! を0%と表示させるには?

標記の件、質問いたします。

エクセル【2003、2007】で

0/0=#DIV/0! となります。

やりたい事は、

0/0=0% と表示をさせたいです。

ご存知の方、いらっしゃましたら、宜しくお願いします。

Aベストアンサー

下記の2つのうちどちらかの方法が在る
(1)一旦割り算はさせて、結果がエラーだったら(ISERROR関数)0を返す書き方
(GoogleででもISERROR関数やISERR関数で照会のこと)

(2)1セル同志の割り算だけで、エラーが出るのは、分母が0の場合だけという数学的な智識を動員して、
分母が0かどうか判別する。=IF(B1=0,0,A1/B1)
(B1が空白セルでも、関数の中では0と同じ扱いをしてくれるので空白か、は略すことが出来る。)
%はセルの表示設定でやるほうが良いだろう。
ーー
本件よくある陳腐な質問ですよ。
Googleででも「エクセル 割り算 エラー」で照会して見よ。


人気Q&Aランキング

おすすめ情報