I think this might do what you want.
Sub test()
Dim HowManyCoins As Long
Dim outArray() As String, outRange As Range
Dim i As Long, Size As Long
Set outRange = Sheet1.Range("q1")
HowManyCoins = Application.InputBox("How many coins?", Default:=2, Type:=1)
If HowManyCoins < 1 Then Exit Sub: Rem cancel pressed
Size = 2 ^ (HowManyCoins)
ReDim outArray(1 To Size, 1 To 1)
For i = 1 To Size
outArray(i, 1) = WorksheetFunction.Dec2Bin(i - 1, HowManyCoins)
outArray(i, 1) = Replace(Replace(outArray(i, 1), "0", "H"), "1", "T")
Next i
With outRange.Resize(Size, 1)
.EntireColumn.ClearContents
.Value = outArray
End With
End Sub
Bookmarks