Hi Folks,
I have a macro with assigned button. This macro is generating a new excel document. Could you help me how to put this table into e specific location in word document
Public Sub MacroOPR()
'
' Macro3 Macro
On Error Resume Next
Application.ScreenUpdating = False
Sheets("ΞΟΠ").Delete
On Error GoTo 0
Worksheets.Add Before:=Sheets("Bal")
With ActiveSheet.PageSetup
.Orientation = xlLandscape
.LeftMargin = Application.InchesToPoints(0.25)
.RightMargin = Application.InchesToPoints(0.25)
.TopMargin = Application.InchesToPoints(0.75)
.BottomMargin = Application.InchesToPoints(0.75)
End With
ActiveSheet.Name = "ΞΟΠ"
ActiveWindow.DisplayGridlines = True
Range("A:A,E:E").ColumnWidth = 36
Range("B:B,F:F").ColumnWidth = 6.6
Range("C:C,D:D,G:G,H:H").ColumnWidth = 11
''lr2 = Sheets("ΞΟΠ").Cells(Rows.Count, "a").End(xlUp).Row
lr2 = Sheets("ΞΟΠ").Cells(1, "a")
ActiveWorkbook.Sheets("OPR").Select
For r = 1 To 22 Step 1
If Sheets("OPR").Range("K" & r).Value <> 0 Then
Sheets("OPR").Range("A" & r, "D" & r).Copy
With Sheets("ΞΟΠ").Range("A" & lr2 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
lr2 = lr2 + 1
End If
Next r
''lr3 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
lr3 = Sheets("ΞΟΠ").Cells(1, "E")
ActiveWorkbook.Sheets("OPR").Select
For rr = 1 To 15 Step 1
If Sheets("OPR").Range("L" & rr).Value <> 0 Then
Sheets("OPR").Range("E" & rr, "H" & rr).Copy
With Sheets("ΞΟΠ").Range("E" & lr3 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
lr3 = lr3 + 1
End If
Next rr
lr4 = Sheets("ΞΟΠ").Cells(Rows.Count, "A").End(xlUp).Row
lr5 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
Sheets("OPR").Range("A23: H23").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("A" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("A" & lr5 + 1)
''.PasteSpecial xlPasteColumnWidths
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr2 = Sheets("ΞΟΠ").Cells(Rows.Count, "a").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
For r = 24 To 29 Step 1
If Sheets("OPR").Range("K" & r).Value <> 0 Then
Sheets("OPR").Range("A" & r, "D" & r).Copy
With Sheets("ΞΟΠ").Range("A" & lr2 + 1)
''.PasteSpecial xlPasteColumnWidths
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
lr2 = lr2 + 1
End If
Next r
lr3 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
For rr = 24 To 32 Step 1
If Sheets("OPR").Range("L" & rr).Value <> 0 Then
Sheets("OPR").Range("E" & rr, "H" & rr).Copy
With Sheets("ΞΟΠ").Range("E" & lr3 + 1)
''.PasteSpecial xlPasteColumnWidths
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
lr3 = lr3 + 1
End If
Next rr
lr4 = Sheets("ΞΟΠ").Cells(Rows.Count, "A").End(xlUp).Row
lr5 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
Sheets("OPR").Range("A33: H33").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("A" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("A" & lr5 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr2 = Sheets("ΞΟΠ").Cells(Rows.Count, "a").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
If Sheets("OPR").Range("K34").Value <> 0 Then
Sheets("OPR").Range("A34:D34").Copy
With Sheets("ΞΟΠ").Range("A" & lr2 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr3 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
If Sheets("OPR").Range("L34").Value <> 0 Then
Sheets("OPR").Range("E34:H34").Copy
With Sheets("ΞΟΠ").Range("E" & lr3 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr4 = Sheets("ΞΟΠ").Cells(Rows.Count, "A").End(xlUp).Row
lr5 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
Sheets("OPR").Range("A35: H35").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("A" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("A" & lr5 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr2 = Sheets("ΞΟΠ").Cells(Rows.Count, "a").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
For r = 36 To 38 Step 1
If Sheets("OPR").Range("K" & r).Value <> 0 Then
Sheets("OPR").Range("A" & r, "D" & r).Copy
With Sheets("ΞΟΠ").Range("A" & lr2 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
lr2 = lr2 + 1
End If
Next r
lr3 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
ActiveWorkbook.Sheets("OPR").Select
If Sheets("OPR").Range("L36").Value <> 0 Then
Sheets("OPR").Range("E36:H36").Copy
With Sheets("ΞΟΠ").Range("E" & lr3 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
lr4 = Sheets("ΞΟΠ").Cells(Rows.Count, "A").End(xlUp).Row
lr5 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
''Sheets("OPR").Range("A23: H23").Copy
If Sheets("OPR").Range("K39").Value <> 0 Then
Sheets("OPR").Range("A39:D39").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("A" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("A" & lr5 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
End If
If Sheets("OPR").Range("L39").Value <> 0 Then
Sheets("OPR").Range("E39:H39").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("E" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("E" & lr5 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
End If
lr4 = Sheets("ΞΟΠ").Cells(Rows.Count, "A").End(xlUp).Row
lr5 = Sheets("ΞΟΠ").Cells(Rows.Count, "E").End(xlUp).Row
Sheets("OPR").Range("A40: H433").Copy
If lr4 > lr5 Then
With Sheets("ΞΟΠ").Range("A" & lr4 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
Else
With Sheets("ΞΟΠ").Range("A" & lr5 + 1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteFormats
End With
End If
Sheets("ΞΟΠ").Select
Columns("A:H").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End Sub
Sub MacroIzOPR()
'
' Macro2 Macro
'
Range("ProzOpr").ClearContents
''Range("B7:D22,B24:D28,B34:D34,B37:D38,F7:H22,F24:H31,F34:H34" _
).ClearContents
Range("B7").Activate
End Sub
Sub MySub()
'
' Macro
'
Call MacroBAL
Call MacroOPR
Call MacroOSK
Call MacroOPP
Sheets(Array("Αΰλΰνρ", "ΞΟΠ", "ΞΡΚ", "ΞΟΟ")).Move
Range("A1").Select
Application.DisplayAlerts = True
End Sub
Also, can I use not e new document, but a word template? I have a few modules, which one does the same thing but for different sheets. How can I put all these tables from different sheets in one specific doc template?
Regards,
Nikola
P.s. I'm sorry for the cyrillic
Bookmarks