エクセルマクロをすこし 2018年8月24日 何はともあれリスト化実現かな。
単票からリスト化する作業ができそうです。
Offsetを使う予定ではなかったけれどこれが使いやすかったのでまぁ良しとしたいところです。贅沢は敵ですしね。。。
次の予定はもう決めてありますけれど、うまくできるかは定かではない。。。。
Sub yy()
Dim Ye, Mo, Da, Filename, SN, toaddress, ccaddress, bccaddress As String
Dim subject, mailBody, credit As String '
Dim outlookObj As Outlook.Application
Dim mailItemObj As Outlook.mailItem
Dim i, SC As Long
Application.ScreenUpdating = False
SC = ActiveWorkbook.Sheets.Count
i = 1
Do While i <= SC
'Do While i <= 5
Worksheets(i).Copy
Ye = Year(Range("E1")) & "年"
Mo = Month(Range("E1")) & "月"
Da = Day(Range("E1")) & "日"
Filename = Range("B1") & Ye & Mo & Da
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\xxxx\" & Filename & ".xlsx"
PrintCommunication = False
With ActiveSheet.PageSetup
.PrintArea = Range("B2:Q52").Address
.Zoom = 90
.PaperSize = xlPaperA4
.CenterHorizontally = True
.CenterVertically = True
.LeftMargin = Application.CentimetersToPoints(0.8)
.RightMargin = Application.CentimetersToPoints(0.8)
End With
PrintCommunication = True
ActiveSheet.Name = Range("B1") & Year(Range("E1")) & Month(Range("E1")) & Day(Range("E1"))
Dim days As Date
Dim DayCon, dedura1, dedura2, dedura3, dedura4, dedura5, dedura6, dedura7, dedura8, dedura9 As Long
Dim fullname, sagyo1, sagyo2, sagyo3, sagyo4, sagyo5 As String
With ActiveSheet
days = .Range("E1").Value
DayCon = .Range("M6").Value
fullname = .Range("E7").Value
dedura1 = .Range("M9").Value
dedura2 = .Range("M10").Value
dedura3 = .Range("M11").Value
dedura4 = .Range("M12").Value
dedura5 = .Range("M13").Value
dedura6 = .Range("M14").Value
dedura7 = .Range("M15").Value
dedura8 = .Range("M16").Value
dedura9 = .Range("M17").Value
sagyo1 = .Range("E19").Value
sagyo2 = .Range("E20").Value
sagyo3 = .Range("E21").Value
sagyo4 = .Range("E22").Value
sagyo5 = .Range("E23").Value
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
Workbooks.Open ThisWorkbook.Path & "\リスト.xlsx"
ActiveSheet.Range("A1").Select
With Cells(Rows.Count, 1).End(xlUp)
.Offset(1, 0) = days
.Offset(1, 1) = DayCon
.Offset(1, 2) = fullname
.Offset(1, 3) = dedura1
.Offset(1, 4) = dedura2
.Offset(1, 5) = dedura3
.Offset(1, 6) = dedura4
.Offset(1, 7) = dedura5
.Offset(1, 8) = dedura6
.Offset(1, 9) = dedura7
.Offset(1, 10) = dedura8
.Offset(1, 11) = dedura9
.Offset(1, 12) = sagyo1
.Offset(1, 13) = sagyo2
.Offset(1, 14) = sagyo3
.Offset(1, 15) = sagyo4
.Offset(1, 16) = sagyo5
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
i = i + 1
Loop
Application.ScreenUpdating = True
ActiveWorkbook.Close
End Sub
コメント
コメントを投稿