A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
5x20の配列でやるなら
Dim arSrc as Variant, arDes as Variant
dim x as integer, y as integer
arSrc = Range("A1:A100")
' 配列を用意する
arDes = Range("B1:U5")
for y = 1 to 5
for x = 1 to 5
arDes(x,y) = arSrc( x + ( y - 1 ) * 5 )
Next
Next
Range("B1:U5").Value = arDes
といった具合でしょう
Dim BU( 1 to 5, 1 to 20 ) as Byte
などとしてしまうと Range(範囲).Value = BU といった記述ができません
VBEで Dim BU( 1 to 5, 1 to 20 ) as Byte とした場合と
Dim BUV as Variant
BUV = Range("B1:U5").Value
とした場合の違いを確認してみてください
すばやい回答ありがとうございます。
私には少し難し過ぎました。
何となくわかりそうな気はするのですが…。
時間を見て解析して見たいと思います。
色々な方法があるのですね。
本当にありがとうございました。
すごく参考になりました。
No.3
- 回答日時:
Rangeオブジェクト2つ使ってループを回せばいいでしょう
Sub Macro1()
dim oSrc as Range, oDes as Range
dim n as integer
Set oSrc = Range("A1:A5")
Set oDes = Range("B1:B5")
for n = 1 to 20
oDes.Value = oSrc.Value
' コピー元は5行下へ移動
Set oSec = oSrc.Offset( 5, 0 )
' コピー先は1列右に移動
Set oDes = oDes.Offset( 0, 1 )
next
End Sub
といった具合です
この回答への補足
分かり易い回答ありがとうございます。
試した所B列~U列まで同じ数字になってしまいましたので
少し、色々試させていただきました。
――――――――――――――――――――――――――――
Sub Macro1()
Dim i As Range, j As Range
Dim n As Integer
Set i = Range("A1:A5")
Set j = Range("B1:B5")
For n = 1 To 20
j.Value = i.Value
' コピー元は5行下へ移動
Set i = i.Offset(5, 0)
' コピー先は1列右に移動
Set j = j.Offset(0, 1)
Next
End Sub
――――――――――――――――――――――――――――
何とかクリア出来ました。本当にありがとうございます。
こんなに短いコード?で出来るなんて思っていませんでした。
それと大変恐縮なのですが、もし知っていましたら
もう一つ教えていただきたいことがあるのですが、
bytearray で宣言して5×20の二次元配列作って、配列に
数字を入れていく方法もあると聞いたことあるのですが、
さっぱりわかりません。
もし、良ければで結構です。
知っていましたら教えて頂けないでしょうか。
初心者なので、知る必要ないのかも知れませんが、
勉強中の身としては、どうしても気になって仕方ないのです。
本当にお答え下さってありがとうございます。
すごく助かりました。
本当にありがとうございました。
専門家なのですね。
コードも分かりやすくて、いろいろ応用できそうです。
初心者にとってはすごく助かりました。
補足付け足していますので、宜しければまた
補足部分見て下さると嬉しいです。
No.2
- 回答日時:
なんだか、課題っぽいけど。
セルB1はセルA1のひとつ右高さ同じ
セルB2はセルA1のひとつ右高さひとつ下
セルB3はセルA1のひとつ右高さふたつ下
セルB4はセルA1のひとつ右高さみっつ下
セルB5はセルA1のひとつ右高さよっつ下
これは、Range("A1").Offset(0,1) ~ Range("A1").Offset(4,1)です。
セルC1はセルA1のふたつ右高さ同じ
セルC2はセルA1のふたつ右高さひとつ下
セルC3はセルA1のふたつ右高さふたつ下
セルC4はセルA1のふたつ右高さみっつ下
セルC5はセルA1のふたつ右高さよっつ下
これは、Range("A1").Offset(0,2) ~ Range("A1").Offset(4,2)です。
1~100を基に「いくつ右側か」「いくつ下か(ゼロ含む)」を求めれば出来ますね?
(二次元だから添え字がふたつですよ)
Range("A1").Offset(列オフセット,行オフセット) = Range("A" & セル位置)
をループさせる。(セル位置を1~100と変化させる)
列オフセットと行オフセットは計算で求める。
列オフセット = (セル位置 - 1) mod 5 で 0~4が得られる。
行オフセット = ((セル位置 - 1) \ 5) + 1 で 1~20が得られる。
試験してないので間違った箇所があるかも。
コードはご自身で研究しながら記述してくださいね。
No.1
- 回答日時:
Sub test()
Dim i As Long, j As Long
Dim v, vv
With Worksheets("Sheet1") 'データのあるシート
v = .Range(.Range("A1"), .Cells(Rows.Count, 1).End(xlUp)).Value
ReDim vv(1 To 5, 1 To UBound(v, 1) / 5)
For i = 1 To UBound(v, 1) / 5
For j = 1 To 5
vv(j, i) = v((i - 1) * 5 + j, 1)
Next
Next
.Range("B1").Resize(UBound(vv, 1), UBound(vv, 2)).Value = vv
End With
End Sub
こうゆう事ですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
カンパ〜イ!←最初の1杯目、なに頼む?
飲み会で最初に頼む1杯、自由に頼むとしたら何を頼みますか? 最初はビールという縛りは無しにして、好きなものを飲むとしたら何を飲みたいですか。
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
とっておきの手土産を教えて
お呼ばれの時や、ちょっとした頂き物のお礼にと何かと必要なのに 自分のセレクトだとついマンネリ化してしまう手土産。 ¥5,000以内で手土産を用意するとしたらあなたは何を用意しますか??
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
高校三年生の合唱祭で何を歌いましたか?
大人になると大人数で合唱する機会ってないですよね。 思い出すと、高校三年生の合唱祭が最後でした。 そこで、みんなの思い出の合唱曲を知りたい!
-
VBA 1次元配列を2次元に追加する
Visual Basic(VBA)
-
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
Excel VBA IF文がうまく動作し...
-
Excelで空白セル直前のセルデー...
-
エクセルVBA 配列からセルに「...
-
エクセル、マクロで番号を読込...
-
[.Net] DataGridのセルをマージ...
-
特定の色のついたセルを削除
-
Excel 範囲指定スクショについ...
-
C# DataGridViewで複数選択した...
-
下記のマクロの説明(意味)を...
-
VBA deleteをクリックすると型...
-
VBA:日付を配列に入れ別セルに...
-
CellEnterイベント仕様について
-
Excel UserForm の表示位置
-
openpyxlでExcelセルをクリック...
-
Excel VBAでCheckboxの名前を変...
-
複数指定セルの可視セルのみを...
-
セルA1からA10の値を表示ができ...
-
EXCEL VBA 文中の書式ごと複写...
-
コンボボックス or リストボッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
Excel UserForm の表示位置
-
Excelで空白セル直前のセルデー...
-
【Excel VBA】一番右端セルまで...
-
【VBA】【ユーザーフォーム_Lis...
-
Excel 範囲指定スクショについ...
-
Excel VBAでCheckboxの名前を変...
-
特定の色のついたセルを削除
-
【ExcelVBA】値を変更しながら...
-
エクセルのカーソルを非表示に...
-
VBA:日付を配列に入れ別セルに...
-
EXCEL VBA 文中の書式ごと複写...
-
入力規則のリスト選択
-
DataGridViewでグリッド内に線...
-
Excel VBA IF文がうまく動作し...
-
関数の引数でrangeを指定したとき
-
C# DataGridViewで複数選択した...
-
Excel VBAで特定の範囲の空白セ...
-
下記のマクロの説明(意味)を...
おすすめ情報