Unless you do something "interesting" I don't see why this simple thing won't work?
Code:
Option Explicit

Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type

Dim rc As RECT

Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long

Private Sub Form_Load()
    Call GetWindowRect(Me.hwnd, rc)
End Sub

Private Sub Form_Resize()

    Me.Move Me.Left, rc.Bottom * Screen.TwipsPerPixelX - Me.Height
    If Me.Top < 0 Then Me.Top = 0
    
    Call GetWindowRect(Me.hwnd, rc)

End Sub
If you setting size via code you may need to use some flags.