Scripting de VBA de Excel 2010

Soy extremadamente verde cuando se trata de VBA. Sin embargo, necesito un script VBA dentro de un libro existente que creará un csv de un range específico de celdas en una hoja de trabajo separada en el libro de trabajo. Tengo un button que creé en la hoja 1 que, onclick, toma los datos de la hoja 3. También necesito los datos formateados en el mismo edificio en el que se muestran en la hoja3. El range de celdas en la hoja 3 es A1: E12. El mayor problema que estoy teniendo es con el formatting. Adjunto un ejemplo del formatting de los datos en la hoja 3: ExcelSheet3Data

Sub InfoBlox() Host = Sheet1.Range("C4").Value Dim rCell As Range Dim rRow As Range Dim vaColPad As Variant Dim i As Long Dim sOutput As String Dim sFname As String, lFnum As Long Const sDELIM As String = ";" 'Requinetworking width of columns vaColPad = Array(0, 0, 6, 0, 4) i = LBound(vaColPad) 'Open a text file to write sFname = "c:\fcbnoc" & "\" & Host & "-INFOBLOX-CONFIG" & ".csv" lFnum = FreeFile Open sFname For Output As lFnum 'Loop through the rows For Each rRow In Sheet3.UsedRange.Rows 'Loop through the cells in the rows For Each rCell In rRow.Cells 'If the cell value is less than requinetworking, then pad 'it with zeros, else just use the cell value 'If Len(rCell.Value) < vaColPad(i) Then 'sOutput = sOutput & Application.Rept(0, _ 'vaColPad(i) & Len(rCell.Value)) & rCell.Value & sDELIM 'Else sOutput = sOutput & rCell.Value '& sDELIM (this value generates an extra delimiter at the end of every line). 'End If 'i = i + 1 Next rCell 'remove the last comma sOutput = Left(sOutput, Len(sOutput)) 'write to the file and reinitialize the variables Print #lFnum, sOutput sOutput = "" i = LBound(vaColPad) Next rRow 'Close the file Close lFnum End Sub 

Estoy seguro de que estoy haciendo esto más difícil de lo que necesito, pero agradezco cualquier ayuda que se proporciona.