• ベストアンサー

エクセルでうまく数字がいきません。

07-12 08-12-15 という数字をネット上からコピーしてきてこれをエクセルに貼り付けてそのまま表示させたいのですが、 コピーしてはりつけてエンターを押すと 7月12日 2008/12/15 こうなってしまいます。2つを左クリック押したまま囲んで右クリックでセルの書式設定のユーザー設定などをいろいろいじったりもしたのですが 04-7-12 08-12-15 というように片方はうまくいったのですがもうひとつがおかしくなったりしてます。 両方とも元のままに表示させるにはどうしたらよいでしょうか? 07-12 08-12-15 これを貼り付けてまず 7月12日 2008/12/15 と表示されてうまくいきません。貼り付けではうまくいかないのでしょうか? これを変換して 07-12 08-12-15 とそのまま表示できたらいいのですが (7)(12) (8)(12)(15) というふうに表示できたらなおいいのですが可能でしょうか?(○の中に数字というのを書きたかったのですがかっこになってしまいました…。) よろしくお願いします。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.4

07-12、08-12-15 などをそのままのカタチで表示するには、あらかじめ、その列を文字列属性にしておくべきでしょう。 >(7)(12)、(8)(12)(15)というふうに表示できたらなおいいのですが可能でしょうか?   (○の中に数字というのを書きたかったのですがかっこになってしまいました…。) 下記で、貼り付けて日付属性になったセルを直接、丸付き数字に変換するようにしてみました。 07-12→(7)(12)、08-12-15→(8)(12)(15) と表示します。()は丸の意味です。 しかし21以上は丸付き数字がないので、[21]、[22]・・・・のように表示します。最高は32? ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入します。出てきたコードウインドウに下記マクロをコピーして貼り付けます。 シートに戻り、変換したいセル範囲を選択し、ツール→マクロ→マクロでこのマクロを指定して実行します。 複数セルを選択して一括変化できます。変換できない文字(入力書式)があったら補足して下さい。 ここから ↓ Sub chgStringFormat()   Dim Rng As Range     '// セル   Dim wrk As String     '// ワーク変数   Dim wrk2 As String    '// ワーク変数(結果)   Dim num As Integer    '// 個々の数値   Dim pot As Integer    '// 『-』の位置      For Each Rng In Selection     '// 元の文字に戻す     wrk = ""     Select Case Rng.NumberFormatLocal       Case "m""月""d""日"""         wrk = Format(Rng.Text, "mm-dd")       Case "yyyy/m/d"         wrk = Format(Rng.Text, "yy-mm-dd")       Case Else         If InStr(Rng, "-") > 0 Then           wrk = Rng.Text         End If     End Select     If wrk <> "" Then       '// 丸付き数字に変える       wrk = wrk & "-": wrk2 = "": pot = InStr(wrk, "-")       While Len(wrk) > 0         num = (Val(Left(wrk, pot - 1)) Mod 100)         If num <= 20 Then           wrk2 = wrk2 & Chr(&H8740 + num - 1)  '// 丸付き数値         Else           wrk2 = wrk2 & "[" & num & "]"     '// [数字]         End If                  '// 次の文字         wrk = Right(wrk, Len(wrk) - pot): pot = InStr(wrk, "-")       Wend       '// 書き込み       Rng = wrk2       Rng.NumberFormatLocal = "G/標準"     End If   Next End Sub

mtaked
質問者

お礼

お礼が遅くなり申し訳ございません。 さっきやったらできました。 本当にありがとうございました。

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

-(ハイフン)の入りそうな列だけ、書式を文字列にして貼りつけては。 必ず貼りつける「前に」書式を文字列にすること。 「貼りつけたい」セル(全体)だと、文字列にしては差し障りのある列もあるでしょうから。 後半は短いコードで出来ますよ。但し丸つきがある20まで。 以下コードのArrayの所は、OKWEBで丸つき文字が(1)のように変えられますが丸つき文字と思ってください。 A列に 07-12 08-12-15 等があるとしてB列に列挿入して、下記を実行してください。B列に丸つき文字が入ります。 -を入れるならm(Val(s(0))) & "-" & m(Val(s(1))) のようにすると良い。 Sub test01() d = Range("a1").CurrentRegion.Rows.Count For i = 2 To d m = Array("", "(1)", "(2)", "(3)", "(4)", "(5)", "(6)", _ "(7)", "(8)", "(9)", "(11)", "(10)", "(12)", "(13)", "(14)", _ "(15)", "(16)", "(17)", "(18)", "(19)", "(20)") s = Split(Cells(i, 1), "-") If Len(Cells(i, "A")) < 6 Then Cells(i, "B") = m(Val(s(0))) & m(Val(s(1))) Else Cells(i, "B") = m(Val(s(0))) & m(Val(s(1))) & m(Val(s(2))) End If Next i End Sub

mtaked
質問者

お礼

ありがとうございました。-でも試してみようと思います。

  • miumiumiu
  • ベストアンサー率21% (715/3385)
回答No.3

はじめにコピー&貼り付けするところ(全体)に 書式→セル→書式設定 文字列 に設定しておけば、 いちいち設定しなくてすみますよ!(*^_^*)

noname#240783
noname#240783
回答No.2

1.Excelの貼り付けたいセル(またはセル範囲)の書式設定を 「文字列」にする。 2.ネット上(?)から目的の部分をコピーする。 3.Excelの貼り付けたいセルを選択してから「右クリック」か メニュー「編集」で「形式を選択して貼り付け」をクリック。 4.「Unicodeテキスト」か「テキスト」を選択して「OK」クリック。 以上で、元のままの形式で貼り付けられたと思います。 Excelの標準セルでは「ハイフン」は日付区切りとして認識しますので、 こういった方法をとらないとダメ(だろう)と思います。 なお、ネット上から持ってくる場合「HTML」形式で貼り付けると 思わぬ空白や書式がそのまま張り付くので避けたいです。 また、特にネット上から持ってくる場合「テキスト」形式で 貼り付けると思わぬ文字コードが「落ちる」可能性がありますので 「Unicodeテキスト」形式をお勧めします(ま、滅多に問題ないですが) なお、そのまま「丸囲みの数字」に変換したい、というのは 無理でしょうねぇ(私にとってはですが)

mtaked
質問者

お礼

回答ありがとうございます。 Date 開催 天候 R レース名 頭数 枠 馬 着 人気 騎手 斤量 距離 Time (前,後)ペース 上り 通過 馬体重 04/01/11 1回中山3 晴(良) 8R 500万下 16 1 2 14 7 ボニヤ 54.0 ダ1200 1:15.9 (34.0-36.7)S 41.4 07-12 432 -4 03/12/06 6回中山1 曇(良) 6R 500万下 16 5 9 6 2 田中勝 54.0 ダ1200 1:14.3 (34.6-36.9)S 38.3 10-11 436 -4 03/11/08 4回東京1 晴(稍) 6R 500万下 12 7 9 4 3 田中勝 54.0 ダ1300 1:20.4 (36.3-37.1)S 37.7 02-02 440 -14 実は上のようにコピーして貼り付けるのは競馬のデータで問題の部分は「道中の通過順位」で通過と書いてある下の数字です。教えてもらった方法ですとレース名とかをクリックするとその情報のところに飛べたりするのですが、全部そのリンクとかがなくなってそれができなくなってしまいます。 身内のものが言うにはマクロ的なことをすればなんとかなるかもみたいなことを言っていますがよくわかりません。 もしかしたら無理なのかもしれませんが何か方法がありましたらよろしくお願いします。 問題の部分だけを選択とかできないですよね?全部選択しか無理ですよね。

  • Hyoutan
  • ベストアンサー率25% (69/266)
回答No.1

一番簡単なのは「'07-12」というふうに,最初に’をつけます.

mtaked
質問者

お礼

回答ありがとうございます。しかしそれでは1つづつしないとダメですよね?コピーして貼り付ける量が多いのでできればまとめて 07-12 02-03-15 02-11-12-12 (数字は4つまでです) とかの数字を一括でもとのまま表示させたいのです。 よろしくお願いします。

関連するQ&A

  • エクセルで数字の入力

    エクセルで、セルに「9092123800037414」と入力して、Enterを押すと、「9.092+15」 と表示され、ツールバー(関数の挿入ボタンの右の部分)には、「9092123800037410」と表示されてしまいます。 最後の0を消して、4に入力しなおしても、Enterを押すと、同じようになります。 セルの書式設定で、数値、の表示にしても最後が0のままの表示になってしまいます。 なぜそうなるのでしょうか?またどうすれば、正しく入力したままの数字が確定されるのでしょうか?

  • word上の数字(111097801829)をコピーしてエクセルのセル

    word上の数字(111097801829)をコピーしてエクセルのセルに貼り付けるとそのままの数字が入力されるのですがエンターをクリックすると数字が(1.11098E+11)に変わります。なぜ?でしょうかそのまま表示させるにはどうすれば良いのでしょうか?

  • Excelの数字表示について

    Excelの数字表示についてです。 4桁以上の数字を3桁毎で区切りかつ、「+」「-」の表示を同時につけたいのですが、方法が分かりません。どなたかご教示下さい。 片方づつは、「セルの書式設定→数値→桁区切りのチェックボックスをチェック」、 「セルの書式設定→ユーザー定義→"+"0;"-"0;0」で出来るのですが、両方一緒に表示するのがわかりません。 例:「+1,234」 「 -1,234」 宜しくお願いします。

  • エクセル2000での分数表示

    エクセル2000で質問します。セルに1/4と入力すると 1月4日となります。セルの書式設定で分数で表示するをクリックしても1/4と入力されず、38356になってしまいます。普通1/4と入力してEnterを押すと日付として表示されるからセルの書式設定、編集で分数で表示するをクリックするとそうなるはずですよね。でも数式バーのタイトルを見ると2005/1/4となっています。つまり2005があるために大きな数字となっていると思うのですが、どうすれば分数で入力できるのでしょうか。基本的なことですいません。

  • エクセル 12桁以上の数字の入力について

    エクセルのセルに12桁以上の数字を入力(貼り付けも含む)すると 1.23457E+11 のように表示されます。入力したとおりに表示させるにはどのような設定をすればいいか教えてください。 セルの書式設定の表示形式を「数値」などに変更するか ’を付けて文字列として入力すればいいのは分かっていますが面倒なので何もしないで最初から123456789012 のように表示させたいのです。セルの幅を広げても1.23457E+11のままです。 数式バーには 123456789012 のように正しく表示されています。セルの書式は「標準」になっていてサンプルは1.23457E+11となっています。 よろしくお願いします。

  • エクセルの数字入力について

    エクセルの数字を入力すると○月○日という表示になってしまいます。 例えば1を入力すると1月1日になります。 セル書式設定で標準に直しましたがこのよになってしまいます。 解決法を教えてください。

  • 数字がセルの左側に寄っていてセルの書式設定がききません。

    別のExcelから一括コピーした数字がセルの左側に寄っていてセルの書式設定がききません。セルをダブルクリックすると何かが解除され、セルの書式設定が有効になります。 コピー時もしくは一括で解除できる方法はあるのでしょうか。どなたか教えてください。 例12345678左より セルをダブルクリック表示のユーザ設定が有効になり 1-23456-78と表示

  • Excelの「形式を指定して貼り付け」のショートカット

    Excelなどでコピーしたセルを貼り付ける場合、ctrl+Vを使うとセルに埋め込まれた式、書式すべてがコピーされます。純粋に数字だけを貼り付けたい場合、右クリックして「形式を選択して貼り付け」を選択して、さらに「値」を選択しなければなりません。 値貼り付けや書式貼り付けをしてくれるショートカットキーはありませんか? 教えていただきたくお願いします。

  • エクセルで数値入力

    こんにちは、エクセルの数値入力でつまづいています。 ただ単に、ある一つのセルに「ゼロから始まる数字」を入力したいのですが、入力後にエンターをクリックするとゼロの部分は表示されず、残りのけたのみが表示されます。 例えば、「0002512」のように入力したいのですが、「2512」となってしまう、ということです。 セルの書式設定でいろいろとトライしてみましたが、うまくいきませんでした。 どうぞ教えてください。 ありがとうございました。

  • エクセル

    Excel2002です、貼り付け先の書式を残して貼り付ける、コピーするセルを選択します、セルを指定して左クリックしますが、裏の関数が表示されてしまいます、ワンクリックで、どのようにすればなおりますか?よろしくお願いします。

専門家に質問してみよう