3

メンバー番号の形式は、00008、9538、746、0746、00746、100125など、何年にもわたって数回変更されており、その他のさまざまな順列は有効で一意であり、保持する必要があります。データベースから一括更新に必要なカスタムExcelテンプレートにエクスポートすると、先行ゼロが削除され、00746と0746がすべて746に切り捨てられます。

この場合、アポストロフィトリックの挿入、またはテキストとしての書式設定は機能しません。これは、Excelでデータを開くまでにデータが既に変更されているように見えるためです。長さが5桁未満の有効な数値があり、ゼロを追加できないため、zipとしてのフォーマットは機能しません。また、「カスタム」フォーマットでは、同じ数の先行ゼロを数値に追加するか、すべての数値に十分なゼロを追加してすべて同じ長さにする必要があるようです。

手がかりはありますか?与えられたものだけをそのままにしておくようにExcelを設定する方法があればいいのにと思いますが、そうではないようです。何か提案やアドバイスをいただければ幸いです。よろしくお願いします!

更新-皆さんの助けに感謝します!ここにいくつかの詳細があります。サードパーティのメンバーシップ管理アプリを使用しています。データベースに直接アクセスすることはできません。一括更新するデータを取得するには、サードパーティの「クエリビルダー」ツールを使用する必要があります。次に、XLSXと呼ばれる「テンプレート」形式を使用してエクスポートしますが、通常の古いExcelをインポートしようとするとエラーが発生するため、舞台裏で何かが行われている必要があります。テンプレートのみが機能します。

Webベースの管理ツールではすべての数値が正しく表示されるため、データはデータベースで正常にフォーマットされます。また、CSVにエクスポートし、.txtとして保存して、Excelにインポートすると、数値が正しく表示されます。

私が行ったことは、以下のoooの説明に似ています。間違った番号でテンプレートをエクスポートし、CSV / txtとしてエクスポートし、これらの番号をテンプレートにコピーして貼り付け、再インポートしました。エラーは発生しなかったと思いますが、成功したかどうかは深夜までわかりません。:-(

4

4 に答える 4

5

データベース内のデータが破損していないと想定して、データベースからcsvまたはテキストファイルにエクスポートしてみてください。

次に、インポートが正しくフォーマットされていることを確認するために、次の操作を実行できます。

カンマ区切り文字付きのテキストファイル:

ここに画像の説明を入力してください

Excelのデータ/テキストから、[区切り文字]を選択し、次へ

ここに画像の説明を入力してください

ここに画像の説明を入力してください

インポートウィザードのステップ3。テキストとして使用する列/フィールドごとに、列を強調表示して[テキスト]を選択します

ここに画像の説明を入力してください

次に、データをテキストとして配置し、先行ゼロを保持する必要があります。

ここに画像の説明を入力してください

繰り返しになりますが、これはすべて、データベースに破損していないデータが含まれており、単純なテキストまたはcsvファイルをエクスポートできることを前提としています。また、Excel 2010を使用していることを前提としていますが、すべてのバージョンでわずかな違いで実行できます。

于 2012-10-03T22:14:37.643 に答える
3

うまくいけば、@oooの答えがあなたのために働くでしょう。私は主に情報提供の目的で別の答えを提供していますが、コメントの制約に対処する気はありません。

理解しておくべきことの1つは、Excelは「数値に見える」データを実際の数値として扱うことに非常に積極的であるということです。ダブルクリックしてExcelに処理を任せて(oooの注意深い手順を使用するのではなく)CSVを開いた場合でも、それらの数値は数値として表示されます(先行ゼロはありません)。お気づきのとおり、これに対抗する1つの方法は、データに明らかに数字以外の文字を追加して(Excelが汚い手を取得する前に)、処理しているのがテキストであることをExcelに本当に納得させることです。

さて、彼らのソフトウェアにアップロードするものがで終わるファイルである場合、それ.xlsxおそらく現在のExcel形式(Excel 2007以降で使用される圧縮されたXMLドキュメント)です。「通常の古いExcel」とは、(「互換モード」の新しいExcelでも機能する)という意味だと思います。.xls

したがって、これまでに試したことがうまくいかない場合でも、データの最後に文字を追加する前に探索する方法があります。(必要に応じてこの回答を更新します。)

于 2012-10-03T23:23:24.693 に答える
2

あなたはアポストロフィで正しい方向に進んでいます。ファイルに追加するときに、数値をテキストとしてExcelに保存する必要があります。

元のExcelファイルの作成/データベースからのエクスポートに何を使用していますか?これはおそらくあなたの焦点があなたの輸出に関してある必要があるところでしょう。

たとえば、1つのアプローチは、データベースエクスポートを変更して'、数値の前に記号プレフィックスを含めることで、Excelが数値をテキストとして表示できるようにすることです。

于 2012-10-03T21:34:52.177 に答える
0

式を使用し=text(cell,"# of zeros of the field")て、先行ゼロを追加します。

たとえば、CellC2には12345があり、 10文字の長さが必要です。入れ=text(c2,"0000000000")ます。

結果は0000012345になります。

于 2017-03-14T16:06:18.777 に答える