1

VBA での日付のコピー/貼り付けに小さな問題があります。dd/mm/yyyy 形式で表示される日付をテキストに取得したいと考えています。私のExcelには英語の元の設定があります。

私は試した:

Selection.NumberFormat = "@"

ただし、テキストは mm/dd/yyyy 形式で返されます。dd/mm/yyyy 形式を維持する方法を知っている人はいますか? 範囲の「ロケール」パラメータを変更しようとしましたが、うまくいきません。

どうもありがとう、ヴィンセント

4

2 に答える 2

0

同様の質問を見ました....日付を次のようにフォーマットできます。

Format(urdate_intext, "dd/mm/yyyy")

Excel は、コンピューターの地域設定に基づいてこれを行います。地域の設定を変更したい場合は、コードの実行後に Excel の日付形式が変更されました をご覧ください。

ところで、それを操作するために範囲を選択する必要はありません。:) 範囲を範囲オブジェクトに設定します。

于 2013-01-09T10:07:29.247 に答える
0

Range オブジェクトには、'Text' という名前のプロパティがあります。スプレッドシートに表示されているものを取得します。次に、それを文字列変数に保存し、以前にテキストとしてフォーマットされたセルに貼り付けることができます (ループ内の同じセルである可能性があります)。だからあなたはできる:

Dim tt as string
tt = ActiveCell.Text
Selection.NumberFormat = "@"
Selection.Value = tt

もう 1 つの解決策は、1 日が 13 日未満の日付でのみ機能した可能性があります。

于 2015-10-20T12:39:47.303 に答える