エクセルマクロをすこし 2018年8月25日 リストから別のリストを作成
リストからさらにリスト作成ということで特にどう繰り返すかがなかなか思いつかなかった。
また、苦労した点は1列目の選択方法と必要な列の数えるところです。
思った通りにはなかなかならず、いろいろな方面から攻めてやっと結果が出たような気がします。これからの展開はカレンダー(Outlookで)の登録です。こちらはVBAを使うか否か、Outlookの機能そのままにしようか迷っています。
数が少ない場合りすとかする過程の中で取り込めて行ける方向で処理ができればと思います。
Googleカレンダーへの登録についてはすでに自分の中で方法が確立しできているのでここには載せないです。
Sub リストから別のリスト作成()
Dim da1 As Date
Dim sagyou1, As String
Dim i, j, RX, ConC As Long`この辺りはお好みになりそうです
Dim FN As String
Application.ScreenUpdating = False
Range("A1").Select
CR = Cells(Rows.Count, 1).End(xlUp).Row
i = 2`1行目はタイトル行の為2行目からの処理ということで
Do While i <= CR
' Cells(i+1, 0).Value
With Cells(Rows.Count, 1).End(xlUp)
End With
da1 = ActiveSheet.Range("A" & CStr(i)).Value
j = 1
ConC = WorksheetFunction.CountA(Range(Cells(i, 13), Cells(i, 18))) - 1`この行の処理はちょっと代替手段を考えたい
Do While j <= ConC
sagyo1 = ActiveSheet.Cells(i, 13 + j).Value
ActiveWorkbook.Save
Workbooks.Open ThisWorkbook.Path & "\リストのファイル.xlsx"
ActiveSheet.Range("A1").Select
With Cells(Rows.Count, 1).End(xlUp)
.Offset(1, 0) = da1
.Offset(1, 1) = sagyo1
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
Workbooks.Open ThisWorkbook.Path & "\元のリストのファイル名.xlsm"
j = j + 1
Loop
i = i + 1
Loop
Application.ScreenUpdating = True
End Sub
コメント
コメントを投稿