プロが教えるわが家の防犯対策術!

色々とネットで調べましたがなかなか条件にあう構文が無くお聞きします。
添付画像の様に4セルが1セットのデータが一行6データ並んでいて、そのデータを
一番先頭の列にそれぞれコピーし、最終的に先頭行のみ残す形に変換したいです。
因みに変換後でデータが入っていないセルはコピーしたセルがブランクだった為との
意味です。どなたか教えて頂けませんでしょうか?宜しくお願い致します。

「VBAで横データを縦データに変換する方法」の質問画像

A 回答 (4件)

No.2 です。



お礼を呼んでみたところ質問の変換後の画像とは違うようですね。
それに、
・4セルが1セットのデータが一行6データ並んでいて
・4セルのデータが横に4つづつ入っている
も違いますし。

もしかして4行×4列が同じデータであり重複する行をなくして1行とみなし、1行×4列を4行×1列に行列反転させたいのでしょうか?
ただそうなると質問文の画像にあるE列以降のデータ群は無視なのかな?
    • good
    • 0

No1です。



お礼を読みましたが、同じ内容が4行ずつ並んでいるってことでしょうか?

よくわかりませんけれど、例えば以下を「マクロの記録」で取って、4行おきに繰り返せば良いのでは?
 ・A1:D1をコピー
 ・貼り付けのオプションで、行列の入れ替え、値でペースト
あとはセル位置を調節して繰り返せば良いだけだと思いますけれど・・・
    • good
    • 0

ちょと意味が分かりません。



>そのデータを一番先頭の列にそれぞれコピーし、最終的に先頭行のみ残す形に変換したいです。

それぞれコピーしたら結局上書きですよね?
それともペーストする際に何かするのですか?

もし何もしないなら6番目のグループを1番目にコピペ(代入?)するだけではないのかな。
こう言う画像は知恵袋の方が拡大可能なので楽なんですけどね。
    • good
    • 0
この回答へのお礼

画像が見にくいのにご回答頂きありがとうございました。
具体的には、4セルのデータが横に4つづつ入っている下記の状態で
※ccccの隣にはブランクセルが入っております。

aaaa bbbb cccc
aaaa bbbb cccc
aaaa bbbb cccc
aaaa bbbb cccc
dddd eeee ffff gggg
dddd eeee ffff gggg
dddd eeee ffff gggg
dddd eeee ffff gggg

上記データを

aaaa
bbbb
cccc

dddd
eeee
ffff
gggg

と縦向きに変換するVBAを調べております。こちらの内容でもしわかる様であれば再度教えて頂けると嬉しいです!

お礼日時:2023/06/26 06:32

こんばんは



添付画像が見えないので、実際になさりたいことはさっぱりわかりませんけれど・・

>横データを縦データに変換する方法を教えて下さい。
シートに並んでいる縦・横のことだと推測しますので、シート関数のTransposeなどを利用することで、簡単に行・列の転置ができます。
https://learn.microsoft.com/en-us/office/vba/api …
もちろん、地道に行列の添え字を入れ替える方法でも可能です。
    • good
    • 0
この回答へのお礼

画像が見にくいのにご回答頂きありがとうございました。
具体的には、4セルのデータが横に4つづつ入っている下記の状態で
※ccccの隣にはブランクセルが入っております。

aaaa bbbb cccc
aaaa bbbb cccc
aaaa bbbb cccc
aaaa bbbb cccc
dddd eeee ffff gggg
dddd eeee ffff gggg
dddd eeee ffff gggg
dddd eeee ffff gggg

上記データを

aaaa
bbbb
cccc

dddd
eeee
ffff
gggg

と縦向きに変換するVBAを調べております。こちらの内容でもしわかる様であれば再度教えて頂けると嬉しいです!

お礼日時:2023/06/26 06:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています