昨日↓でお世話になりました。
http://oshiete1.goo.ne.jp/qa4299999.html
おかげさまでだいぶ先に進むことができました。
ですがまた行き詰ってしまったので、お力を借りれたらと思い質問させていただきます。
昨日ご教授いただいたコードでは、「管理表.xls」のコマンドボタンを押すと、同一フォルダ内にあるブック「*予定表*.xls」内のシート「*予定?」の固定の範囲
「G2,H2,N3,O3」を「管理表.xls、sheet2、A1:D4」に
「B14:I44」を「管理表.xls、sheet2、A2:H32」に
まだファイル、シートがある場合はループでそれらの次の行に値をいれていくことができたのですが、固定範囲のうちの「G2,H2,N3,O3」を、「管理表.xls、sheet2、A2:H32」のA~D列全てに付けたいのです。
なんかわかりづらい表現になってしまいましたが、
____A___B___C___D____E____F____G____H____I____J_____K____L
1 G2 G2 N2 O3 B14 C14 D14 E14 F14 G14 H14 I14
2 G2 G2 N2 O3 B15 C15 D15 E15 F15 G15 H15 I15
3 G2 G2 N2 O3 B16 C16 D16 E16 F16 G16 H16 I16
・
・
・
という感じにしたいんです。どうかご教授お願いします。
一応コードを載せておきます。
Sub 予定()
Dim Pn As String
Dim Fn As String
Dim ws As Worksheet
Dim r As Range
Dim v, i As Integer
Pn = ActiveWorkbook.Path
ChDir Pn
Fn = Dir("*予定表*.xls")
v = Array("N3", "O3", "G2", "H2")
Set r = ThisWorkbook.Worksheets("Sheet2").Range("A1")
Do Until Fn = ""
Workbooks.Open Filename:=Fn
For Each ws In Worksheets
If ws.Name Like "*予定?" Then
With ws
For i = 0 To 3
r.Offset(0, i).Value = .Range(v(i)).Value
Next
r.Offset(1).Resize(31, 8).Value = .Range("B14:I44").Value
Set r = r.End(xlDown).Offset(1)
End With
End If
Next
Workbooks(Fn).Close SaveChanges:=False
Fn = Dir()
Loop
End Sub
++++++++++++++++++++
OS ⇒Windows XP
Version⇒Excel 2000
++++++++++++++++++++
No.3ベストアンサー
- 回答日時:
>上かつ、N2、O3は文字列なのでstringにしたいんです。
サンプルです。
Sub test2()
Dim ws As Worksheet
Dim r As Range
Dim v, i As Integer
v = Array("N3", "G2")
Set r = Worksheets("Sheet2").Range("A1") '貼り付けるのは1行目から?
Worksheets("Sheet2").Range("A:B").NumberFormatLocal = "@" '文字列設定
For Each ws In Worksheets
If ws.Name Like "*予定?" Then
With ws
For i = 0 To 1
r.Offset(, i * 2).Resize(31, 2).Value = .Range(v(i), .Range(v(i)).Offset(, 1)).Value
Next
r.Offset(, 4).Resize(31, 8).Value = .Range("B14:I44").Value
Set r = r.End(xlDown).Offset(1)
End With
End If
Next
Set r = Nothing
End Sub
No.2
- 回答日時:
ANo.1です。
取り敢えずのサンプル。(解釈が違っていたらすいません)
Sub test()
Dim ws As Worksheet
Dim r As Range
Dim v, i As Integer
v = Array("G2", "N3")
Set r = Worksheets("Sheet2").Range("A1") '貼り付けるのは1行目から?
For Each ws In Worksheets
If ws.Name Like "*予定?" Then
With ws
r.Resize(31, 1).Value = .Range(v(0)).Value
For i = 0 To 1
r.Offset(, i * 2 + 1).Resize(31, 2).Value = .Range(v(i), .Range(v(i)).Offset(, 1)).Value
Next
r.Offset(, 5).Resize(31, 8).Value = .Range("B14:I44").Value
Set r = r.End(xlDown).Offset(1)
End With
End If
Next
Set r = Nothing
End Sub
No.1
- 回答日時:
>____A___B___C___D____E____F____G____H____I____J_____K____L
>1 G2 G2 N2 O3 B14 C14 D14 E14 F14 G14 H14 I14
A列とB列が同じなのはミス?それとも正解?
C列がN2なのはミス?それとも正解?
この回答への補足
n-junさん、昨日は本当にお世話になりました!
失礼しました。
__A_B_C_D
1_N3_O3_G2_H2・・・
2_N3_O3_G2_H2・・・
でした。すいません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
好きな人をGW誘おうと思ってい...
-
●●時頃の頃って 前後何分くら...
-
家庭訪問の時間
-
GWにどこに出掛ける予定ですか?
-
Outlookで送った会議依頼が相手...
-
また予定合えばって行く気ない...
-
グーグルカレンダーの保存期間...
-
ドタキャンされるとどう思いま...
-
ご予定のご提示ありがとうござ...
-
人から忘れられる事がかなり多...
-
遊ぶ約束をしていてLINEで予定...
-
ドタキャンする親への対応…
-
掃除の当番日を相手のOutlook20...
-
「先約」と「予定」について
-
「予定」が終わったら「結果」?
-
友達と遊ぶ計画が全く進まない
-
友達の自分に対する優先順位が...
-
outlookについて
-
クリスタルレポートの線の挿入...
-
至急お願いします!返信で悩ん...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
●●時頃の頃って 前後何分くら...
-
グーグルカレンダーの保存期間...
-
遊ぶ約束をしていてLINEで予定...
-
ご予定のご提示ありがとうござ...
-
Outlookで送った会議依頼が相手...
-
友達と遊ぶ計画が全く進まない
-
また予定合えばって行く気ない...
-
人から忘れられる事がかなり多...
-
「先約」と「予定」について
-
Googleカレンダーで、終日の予...
-
遠距離恋愛カップルです。 彼と...
-
同一アカウントにて、Outlookで...
-
祝日
-
2月の後の方の3連休にディズニ...
-
友達の自分に対する優先順位が...
-
3人で遊ぶ約束しててグループLI...
-
金曜日に嫌な予定があります。 ...
-
グーグルカレンダーでどこに予...
-
スケジュールをみっちり組む方...
-
掃除の当番日を相手のOutlook20...
おすすめ情報