2

ColdFusion 9 を使用して、Excel (2007、xls) スプレッドシートからデータをインポートしています。インポートされる列の 1 つが日付フィールドです。ほとんどの場合、日付は問題なく表示されますが、場合によっては、日付形式で奇妙なことが起こっているように見えます。として出くわしますmm\/dd\/yyyy。これらの追加の を追加しているものはわかりません\。特定のエラーは明らかです。

"11\/15\/2012 is an invalid date or time string." 

スプレッドシートとセル自体を直接見ると、日付は として正しくフォーマットされていmm/dd/yyyyます。

誰がこれを引き起こしているのか知っていますか?

ファローアップ

役立つ回答をありがとう。最終的に、最良のソリューションは CoderSeven によるものでした。問題のあるスラッシュをReplace(dateString, '\', '', 'all')削除して、データを処理していました。何万人もの個人のスプレッドシートを処理している可能性があるため、これが最良のソリューションであることが証明されました。彼らが使用するスプレッドシートの形式は制御できますが、フィールドにデータを入力するか、カット アンド ペーストするかは制御できません。最終的に、余分なスラッシュがどこから来たのか知りたいのですが、この解決策はうまくいきました.

4

2 に答える 2

1

これは、なぜこれが起こっているのかについての答えではありませんが、回避策です。

を使用するだけReplace(yourdate, '\', '')です。

個人的には、次のようなスタンスを取る傾向があります。

MS製品が奇妙なことをした場合、最善の解決策は、その奇妙なことがどこから来ているのかを突き止めようとするのではなく、その奇妙なことを処理できることを確認することです.

MS 製品が悪いというわけではありません。通常、多くの時間を節約できます。

于 2013-02-15T23:29:03.563 に答える
0

「11\/15\/2012 は無効な日付または時刻の文字列です。」問題の 1 つは、スプレッドシートの日付が文字列ではなく、基本的に整数である Excel の時間値であるということです。おそらく、次を使用してこれらのセルをテキスト形式に変換します: =TEXT(C7,"mm/dd/yyyy")

問題を解決するかもしれません。安全のために、フォーマットもテキストに変更します。幸運を。

于 2013-02-15T16:56:36.863 に答える