2017-08-14 13 views
-2

データベースから直接ダウンロードしたデータを含むワークシートがあります。テキスト形式の日付と収入を含むすべてのテキストが含まれています。私はSUMIFS()機能を使用する年と月を確認することができるように、テキストから数値への1列と日付(日付の)の1列を日付形式に変換したいと思います。Excel VBAでテキストを数値と日付に変換する

image here

追加情報:[閉じる日付欄に、添付された画像から見ることができるよう、日付はすべての点で接続されている2016年11月30日の形式であり、かつdd.mm.でありますyyyyという表現ですが、すべてがテキストです。

[金額]列の収益の数は実際にはヨーロッパの式50000,00で実際は50000.00を意味し、50000,00はテキスト形式です。

現在、LEFT(),MID(),RIGHT()を使用して年、月、日の数字の文字列を抽出し、次にDATE()関数を使用して日付に変換します。

Amount列の数値については、単にTexttoColumnsを使用して手動で変換を行っています。

VBAでこれらの作業を行う方法はありますか?誰かがコードを教えてくれますか?私はいくつかの基本的なプログラミング経験を持っていますが、前にVBAに自分自身を公開していません。

ありがとうございました!ほんとうにありがとう!

答えて

0

私は単に検索と置換機能を使用します。日付の列をハイライト表示し、 "。" "/"で置き換えてください。その後、それはあなたにいくつかの日付を与えるでしょう。あなたは "、"で同じことをし、 "。"で置き換えることができます。 - まだテキストとして表示されている場合、そこから数値に変換することができます。 (いずれにしても、VBAはあなたのためにもっと難しい作業になります)

+0

返信いただきありがとうございます。正確には、私はそれを手動で行うことができるという意味です。しかし、VBAを使って自動的にそれを行う方法があるかどうかは疑問でした。私は生データテーブルを更新するたびに、これらのテキストを自動的に日付と数値に変更することができればいいと思っています。 – kangnade

+0

ええ、レコードマクロ機能を試して、実際にマクロでやりたければ、私が言ったことを正確に記録してください。コードを見て、それが何をしているのかを見ることができます。高レベルでは、Select Range + ACTION(検索と置換の機能です)になります。 – gemmo

+0

こんにちはgemmo、ありがとう!私はマクロを記録することでそれを解決しようとします。乾杯! – kangnade

1

パワークエリーを使用できます。コーディングは必要ありません。クエリを開始し、クエリエディタのリボンアイコンをクリックしてデータを変換します。たとえば、カンマをドットで置き換えたり、テキストを数値などに変更したりします。各アクションはM言語を使用してステップとして記録されます。必要に応じて、Mコードを操作することができますが、何かのためにこの単純な必要はありません。

ソースデータが変更されると、クエリをリフレッシュできます。

パワークエリーは、MicrosoftからExcel 2010および2013用の無料アドインであり、Get & TransformとしてExcel 2016に組み込まれています。

関連する問題