エクセルで以下のようなデータがあります。
やりたいのは、各要素ごとに足し算していき、合計値の行列がほしいです。
エクセル内で行数列数は変わりません。
データはすべて数値で小数点以下もあります。
本当のデータは100行200列が100回繰り返しくらい大量です。
Noも気にしなくてよく、上から順に足したいです。
配列でやろうとしましたが、配列で各要素に足していく方法が分からなくて困っています。
よろしくお願いします。
0 2 5(No,行数,列数)
2 2 2 2 2(データ)
2 2 2 2 2(データ)
1 2 5
1 1 1 1 1
1 1 1 1 1
2 2 5
以下続く
No.3
- 回答日時:
No1です。
>配列数式は手打ちだと大変なので。。。
VBAのご質問なので、数式(=文字列)もVBAで作成すると考えての回答でしたが・・
でも、配列数式なんかを使うよりも、No2様の方法の方がよさそうですね。
手間もたいして変わりませんし、計算はエクセルがやってくれますし・・
No.1
- 回答日時:
こんばんは
>配列で各要素に足していく方法が分からなくて困っています。
VBAでは行列計算を直接行う機能はサポートしていないようですので、単純に要素の回数だけループで処理してゆくしかないようです。
別法として、シート上で計算するならば、配列数式を利用してまとめて計算することも可能と思います。
式にしてみると、
{=A2:E3+A5:E6+A8:E9 ・・・}
みたいな感じですが、単純にセル範囲のアドレスを「+」で繋ぐだけで式ができるので、それをセットしてしまえば、後はエクセルが計算してくれるという塩梅です。
ご質問には直接関係はありませんが・・
>0 2 5(No,行数,列数)
は、2行5列の行列を意味しているものと思いますが、以降のデータにも全てこの記載があるようですけれど、冗長なので、これらの数字に食い違いがあった場合にどうするんでしょうね?
例えば、次のデータが「1 2 6」になっていた場合など。
先頭行の情報を信じて、あとはn+1行おきに処理しても良いなどであれば問題は起きませんけれど・・
ありがとうございます。
for文で繰り返す方法を試してみます。配列数式は手打ちだと大変なので。。。
行数列数が途中で変わることはないので最後まで同じ繰り返し処理でよいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBA コードが同じでもファイルによって処理速度が大きく変わるのはなぜ 5 2022/11/06 21:34
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Excel(エクセル) VBAで重複データを合算したい(時間) 1 2022/12/08 23:06
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) エクセル関数のスペシャリストの方、教えてください。 写真のように A列にはデータ C列にはデータの中 7 2022/04/09 00:15
- Excel(エクセル) Countifよりも早く重複数をカウントする方法ありますか? 18 2022/07/04 13:39
- Visual Basic(VBA) エクセル 2つの列にある値の完全一致を抜き出すVBA 15 2022/12/15 03:22
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
合計3TBのデータのハッシュ値を...
-
教えて下さい
-
VBA 空白セルを削除ではない方...
-
多量のSUMIF式を軽くしたい
-
【エクセル】測定時間がバラバ...
-
配列でデータが入っている要素...
-
エクセルで2つの時系列のデー...
-
メモ帳(テキストデータ)をExc...
-
C言語プログラム変更
-
Matlab:plotで特定の値だけをプ...
-
Excelのマクロでワードのテキス...
-
シーケンサにパソコンからアク...
-
VBAを使ってOutlookメール本文...
-
matlabでの標高断面図の作成
-
ウィンドウ枠の固定を行の2箇所...
-
パースとはなんですか?
-
Accessで該当データにフラグを...
-
ビットシフトについて
-
VBA & easycomm で長時間測定の...
-
配列の勉強をしています。使用...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
教えて下さい
-
配列でデータが入っている要素...
-
【エクセル】測定時間がバラバ...
-
メモ帳(テキストデータ)をExc...
-
VBA 空白セルを削除ではない方...
-
多量のSUMIF式を軽くしたい
-
Excelのマクロでワードのテキス...
-
エクセルで2つの時系列のデー...
-
この行は既に別のテーブルに属...
-
VBAを使ってOutlookメール本文...
-
シーケンサにパソコンからアク...
-
EXCELVBAでSQLserverからデータ...
-
ブレーカー落ちで壊れたりしな...
-
[C言語] コメント文字列を無視...
-
オープンチヤットでデータ削除...
-
モジュラス103の算出方法について
-
javaでDBからデータを取ってき...
-
カンマからスラッシュに
-
VBA 毎日取得するデータを順番...
-
Android携帯をUSBメモリ代わりに
おすすめ情報