I'm sure others can improve upon this... It will align the text with the current UCS. I typically use this with UCS View. Option Explicit '04/04 'Align text rotation with the UCS (typically view) Public Sub Align_Text_With_UCS() Dim retAngle As Double Dim oEnt As AcadEntity Dim oSS As AcadSelectionSet Dim Pt1 As Variant Dim Pt2 As Variant Dim grpCode(0 To 3) As Integer Dim dataVal(0 To 3) As Variant ' Build a selection set of group codes and values to filter for: Text or Mtext. grpCode(0) = -4 dataVal(0) = "<OR" grpCode(1) = 0 dataVal(1) = "TEXT" grpCode(2) = 0 dataVal(2) = "MTEXT" grpCode(3) = -4 dataVal(3) = "OR>" ' get the UCS origin Pt1 = ThisDrawing.GetVariable("ucsorg") ' get the X direction vector Pt2 = ThisDrawing.GetVariable("UCSXDIR") ' get the angle in radians retAngle = ThisDrawing.Utility.AngleFromXAxis(Pt1, Pt2) 'get (m)text entities to modify Set oSS = BuildSelectionSet("Select Text:", grpCode, dataVal) ' set rotation angle for each entity For Each oEnt In oSS If TypeOf oEnt Is AcadText Then oEnt.Rotation = retAngle ElseIf TypeOf oEnt Is AcadMText Then oEnt.Rotation = 0 End If Next oEnt ' release memory (yeah right) Set oEnt = Nothing Set oSS = Nothing End Sub