I'm looking for help with positioning multiple shapes based values which are stored in cell references.
My current code positions them individually, but if possible, I would like to create a loop to simplify the solution
Sheet 2 contains the cell reference for positioning & size
Sheet 4 contains the actual shape.
Sub PrjTasks()
With ActiveSheet.Shapes.Range(Array("Task1_01"))
.Left = Range(Sheet2.Range("AQ2").Value).Left
.Top = Range(Sheet2.Range("AQ2").Value).Top + (Range(Sheet2.Range("AQ2").Value).Height - 11) / 2
.Width = Sheet2.Range("AG2").Value
.Height = 11
End With
With ActiveSheet.Shapes.Range(Array("Task2_01"))
.Left = Range(Sheet2.Range("AR2").Value).Left
.Top = Range(Sheet2.Range("AR2").Value).Top + (Range(Sheet2.Range("AR2").Value).Height - 11) / 2
.Width = Sheet2.Range("AH2").Value
.Height = 11
End With
With ActiveSheet.Shapes.Range(Array("Task3_01"))
.Left = Range(Sheet2.Range("AS2").Value).Left
.Top = Range(Sheet2.Range("AS2").Value).Top + (Range(Sheet2.Range("AS2").Value).Height - 11) / 2
.Width = Sheet2.Range("AI2").Value
.Height = 11
End With
With ActiveSheet.Shapes.Range(Array("Task1_02"))
.Left = Range(Sheet2.Range("AQ3").Value).Left
.Top = Range(Sheet2.Range("AQ3").Value).Top + (Range(Sheet2.Range("AQ3").Value).Height - 11) / 2
.Width = Sheet2.Range("AG3").Value
.Height = 11
End With
With ActiveSheet.Shapes.Range(Array("Task2_02"))
.Left = Range(Sheet2.Range("AR3").Value).Left
.Top = Range(Sheet2.Range("AR3").Value).Top + (Range(Sheet2.Range("AR3").Value).Height - 11) / 2
.Width = Sheet2.Range("AH3").Value
.Height = 11
End With
With ActiveSheet.Shapes.Range(Array("Task3_02"))
.Left = Range(Sheet2.Range("AS3").Value).Left
.Top = Range(Sheet2.Range("AS3").Value).Top + (Range(Sheet2.Range("AS3").Value).Height - 11) / 2
.Width = Sheet2.Range("AI3").Value
.Height = 11
End With
End Sub
Thanks for taking time to look at this
Bookmarks