Excel VBA 質問スレッド №2086 (未解決)
EXCELに文字列として入力されている数字をVBAでsumif集計するには
投稿者 : 雛 投稿日時 : 2025/02/21(Fri) 17:31:15 OS : Windows 10 EXCEL : Excel 2013
システムからEXCEL形式でダウンロードしたデータに集計作業をする際、なぜか集計結果が0となってしまい、よく確認してみると、元のシステムの都合か文字列型になっているようでした。
この場合、集計するにはどのようにすればいいでしょうか。
最終行までループさせて型変換しながら他のセルにコピーしたものに対して集計するという方法は考えつきますが、もう少し簡単な方法は無いかと思案しています。
システムからEXCEL形式でダウンロードしたデータに集計作業をする際、なぜか集計結果が0となってしまい、よく確認してみると、元のシステムの都合か文字列型になっているようでした。
この場合、集計するにはどのようにすればいいでしょうか。
最終行までループさせて型変換しながら他のセルにコピーしたものに対して集計するという方法は考えつきますが、もう少し簡単な方法は無いかと思案しています。
スポンサーリンク
[返信 1] Re : EXCELに文字列として入力されている数字をVBAでsumif集計するには
投稿者 : higeru 投稿日時 : 2025/02/21(Fri) 17:40:52
> 元のシステムの都合か文字列型になっているようでした。
それは見た目が左寄せになっていて、F2→Enter で右寄せの数値になるのではないでしょうか。
ということであれば以下でよいかも。
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
> 元のシステムの都合か文字列型になっているようでした。
それは見た目が左寄せになっていて、F2→Enter で右寄せの数値になるのではないでしょうか。
ということであれば以下でよいかも。
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
[返信 2] Re : EXCELに文字列として入力されている数字をVBAでsumif集計するには
投稿者 : ピロリ 投稿日時 : 2025/02/21(Fri) 19:27:24
どこに、どんな値や式が入力されているのか分かりませんが、↓のような感じでは駄目ですかね?
どこに、どんな値や式が入力されているのか分かりませんが、↓のような感じでは駄目ですかね?
Sub Sample() Dim rng As Variant With ActiveSheet.UsedRange rng = .Formula '式や値を一旦退避し、 .NumberFormatLocal = "G/標準" '書式を「標準」に変えて、 .Formula = rng '式や値を戻す End With End Sub
当掲示板について
- Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
- 記事内ではHTMLのタグは使用できません。
- 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
- Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
- Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
( 処理日時 : 2025-07-05 18:24:00 )