Some years back I found a tool to format the SQL and VB.Net code in posts (see hilite.me), tool which made blogging much easier, as I didn't had to format the code manually myself. However, showing the output of the queries into blog posts resumed mainly to making screenshots, which is unproductive and wastes space from my quota. Therefore, today I took the time to create a small Excel macro which allows formatting an MS Excel range to a HTML table. The macro is pretty basic, looping though range's cells:
'formats a range as html table Public Function GetTable(rng As Range) Dim retval As String Dim i, j As Long retval = "<table style=""width: 90%;color:black;border-color:black;font-size:10px;"" border=""0"" cellpadding=""1"">" For i = 1 To rng.Rows.Count() retval = retval & "<tr style=""background-color:" & IIf(i = 1, "#b0c4de", "white") & ";font-weight:" & IIf(i = 1, "bold", "normal") & """>" For j = 1 To rng.Columns.Count() retval = retval & "<td align=""" & IIf(IsNumeric(rng.Cells(i, j)), "right", "left") & """>" & rng.Cells(i, j) & "</td>" Next retval = retval & "</tr>" & vbCrLf Next retval = retval & "</table>" GetTable = retval End Function
Just copy the GetTable macro into a new module in Excel and provide the range with data as parameter.
Unfortunately, copying macro's output to a text file introduces two double quotes where just one was supposed to be:
This requires as intermediary step to replace the two double quotes with one in Notepad (e.g. via the Replace functionality), respectively to remove manually the first and last double quotes.
Notes:
1. Feel free to use and improve the macro.
2. Further formatting can be added afterwards as seems fit.
Happy coding!
No comments:
Post a Comment