First of all, I would like to clarify that there is no harm in unloading a form in its Load event. I do it at times when needed (including many examples I post here; thread222-1271566 being the most recent).
You can check it yourself. Start VB and try running the following code.
___
[tt]
Private Sub Form_Load()
Unload Me
End Sub[/tt]
___
The code runs fine and programs finishes as expected without any errors.
In your case, I suspect that some statement, following the Unload Me statement, is referring to a data member, or control of FormA. That statement causes the FormA to load again, which does not popup on screen but stays loaded in memory.
Carefully look through your code that after Unload Me and before End Sub you do not access any property, method, or control placed on the form. If you find such code, remove it, or move it above the Unload Me statement so that it is executed before the form is unloaded and does not cause the form to load again.
As long as you don't break this rule (i.e. access a public member property, method or control on the form after unloading it), you can place your unload statement anywhere, including Load or QueryUnload events. Best way to avoid this situation is to place the [tt]Unload Me[/tt] statement immediately above the [tt]End Sub[/tt] statement as mentioned above, or atleast move it closer to the end as much as possible.
Note that after issuing an unload statement, you can still do a lot of things, as far as those things have nothing to do with the unloaded form. See the following example.
___
[tt]
Private Sub Form_Load()
Unload Me 'form is unloaded here
'just do some stuff
'get file listing at C

im S As String
S = Dir$("C:\")
While Len(S)
Debug.Print S
S = Dir$
Wend
End Sub[/tt]
___
But if you refer to any public member of the form, after unload statement, it causes the form to load again and stay in memory. See the following example.
___
[tt]
Private Sub Form_Click()
Unload Me 'form is unloaded here
'again doing some stuff
'but this time related to Form1
Dim S As String
S = Caption 'accessing the 'Caption' property causes the form to load again!
End Sub[/tt]
___
See also thread222-712089 where we had a discussion on a similar issue.