その業務系システムには、エクスポート機能が用意されています。その機能を使うと、条件に従って抽出したデータを、利用者端末(各社員のパソコン)に、ファイルとして保存することができます。
端末にエクスポートしたファイルを開くと、データを表計算ソフトExcelで扱うことができます。抽出したデータを、表計算で自由に編集できるので、便利な機能です。
ただし、ここで一つ問題があります。
セル内の数字の先頭に、アポストロフィー(シングルクォーテーション)がくっ付いているのです。
このアポストロフィーは、数字を文字列として表示する働きがあります。数字を、「数値」としてではなく、「文字列」として扱うようにする特殊な働き、機能です。
文字列ですから、見た目は数字であっても、合計などの計算ができません。
データベースシステムからExcelファイルとしてエクスポートするときに、よく遭遇する問題です。

計算可能なデータにするには、、数値に変換する必要があります。データ先頭のアポストロフィーを取り除く、などです。
このアポストロフィーは、通常の文字ではありません。書式設定のための制御文字です。
ですから、置換機能を使っての削除はできません。セル範囲内の大量のデータの、先頭アポストロフィーを一気に削除しようと、多くの方が置換機能でやろうします。ですが、失敗します。これでは無理です。
では、どうするか。
他の方法で、データ先頭のアポストロフィーを削除することになりますが、そのためには、いくつかの方法があります。
その方法の一つが、
「形式を選択して貼り付け」の機能
を使う、というものです。
「形式を選択して貼り付け」の機能を使うと、大量のデータのアポストロフィーを、一気に取り除くことができます。やり方は、それほどむつかしいものでありません。いったん覚えてしまえば、簡単にやれます。
その具体的手順は、
⇒ こちらの記事をご覧ください。
私も、これまで、「形式を選択して貼り付け」機能を使って、文字列から数値データに変換させて、処理を行ってきました。
「形式を選択して貼り付け」機能での文字列から数値への変換は、割と簡単な作業です。
確かに単純な手作業です。
ですが・・・・、
そうは言っても・・・・、
これが毎回となると、ちょっと煩わしく感じます。
そうなると、
「この作業、マクロ化できるんじゃね?」
「ボタンのクリック一つで、自動実行できるんじゃね?」
って、考えるようになります。
人間、ある問題をずっと考えていたら、あるとき、ふっとひらめくもんです。
私もひらめきました。
「そうだ、データ型変換関数だ!」と。
で、やってみました。
そうしたら、大成功。想定のとおり、うまくいきました。
データ型変換関数は、セルに格納されているデータのデータ型を、他の型に変換する関数です。
例えば、
「CInt」関数は、データ型を整数型(Integer)に変換してくれます。関数の戻り値が、整数という数値となる関数です。
同じく、「CLng」関数は、データ型を長整数型(Long)に変換してくれます。
つまり、「CInt」関数や「CLng」関数は、セル内のデータを数値に変換してくれます。これによって、元々のデータの先頭にアポストロフィーがくっ付いていても大丈夫です。これら「CInt」「CLng」の関数使用の結果、数値に変換されます。そうすると、足し算、引き算、合計などの計算ができるようになります。
具体的に、どのようなマクロコードなのか、それについては、また別の記事にまとめることにします。
それでは、また次の記事で
■■■■ goosyun ■■■■
《2023年8月11日追記》
マクロで自動実行するために、VBAコードはどう書くのか、記事にまとめました。
⇒ こちらの記事をご覧ください。