• 締切済み

"/"がある文字列が勝手に日付型になってしまい困っています

"/"がある文字列が勝手に日付型になってしまい困っています VBAのセルの書式設定について質問があります。 マラソンの順位や個人情報をまとめた表があり、その表がカテゴリ別に半角スペースで区切られているデータをセルごとにまとめています。 順位は"1/3467"のように"個人の順位/参加者"という形式なのですが、カテゴリ毎に分割してセルに文字列を入れると"Jan-67"となっており日付型として認識されてしまいます。 (個人順位が13位以降は"13/3467"といった形式に戻ることから、最初の1位から12位までの間だけだと思われます) そこで、2つほど対策をしてみました。 1,セルの書式設定を変更する  →一通り確認してみましたが、どれも変更できませんでした   ユーザー定義の使い方次第で可能かもしれませんが、分かりませんでした。 2,"/"の位置で分割して、個人順位と参加者に分けて管理する。  →"3467/1/1"という文字列に変換されているため、"/"で分割しても参加人数は認識できますが、   個人順位が日付のような形式になってしまいます。 順位の形式は変えても変えなくても構いませんので、文字列を日付型に変換せずに保管する方法をご存知でしたら、ご教授いただけないでしょうか。 よろしくお願いいたします。

みんなの回答

  • Halical
  • ベストアンサー率8% (5/60)
回答No.3

String変数に代入してからセルに入れれば大丈夫です。 自分の場合は、これで完璧に大丈夫でした。 ただ、このままだと、そのセルを編集してしまった場合、また日付型になる可能性があります。 もし、そのセルをいじる可能性があるのであれば、念の為、文頭に'(アポストロフィ)を付けておく事をお勧めします。

jet_upper
質問者

お礼

返事が遅れてしまい大変申し訳ありません。 ありがとうございました。

  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.2

>→一通り確認してみましたが、どれも変更できませんでした 変更できなかった、というのは、どういうことですか? 書式を変更したのに、表示は変更されなかった、ということですか? それとも、変更の仕方が解らなかった、ということですか? > →"3467/1/1"という文字列に変換されているため、"/"で分割しても参加人数は認識できますが、個人順位が日付のような形式になってしまいます。 たぶん、一度、日付型で入力した後に、数字を入力したからだと思います。 表示形式を標準に戻して、もう一度やってみてください。

jet_upper
質問者

お礼

返答が遅れてしまい大変申し訳ありません。 アドバイスをいただきありがとうございました。

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

>セルの書式設定を変更する 文字列にすれば良いはずです。 但し、日付変換された後では意味がありません。 書式を文字列にしたセルに"1/3467"と入力して みてください。 もう一つの手として、'(アポストロフィ)を前に 付けても同様の効果が得られます。 入力時に'1/3467 としてみてください。

jet_upper
質問者

お礼

返答が遅れてしまい大変申し訳ありませんでした。 アドバイスをいただきありがとうございました。