Public Sub SelectionToBBCode()
Dim sel As Range
Dim c As Range
Dim strOutput As String
Dim pre As String
Dim post As String
Set sel = Application.Selection
'Table begins
strOutput = "[table]"
For Each c In sel.Cells
'if row begins
If c.Column = 1 Then
strOutput = strOutput & Chr(13) & "[tr]"
End If
pre = ""
post = ""
If IsNumeric(c) Or IsDate(c) Then
pre = pre & "[right]"
post = "[/right]" & post
End If
If c.Font.Bold Then
pre = pre & "[b]"
post = "[/b]" & post
End If
If c.Font.Italic Then
pre = pre & "[i]"
post = "[/i]" & post
End If
strOutput = strOutput & "[td]" & pre & c.text & post & "[/td]"
'if row ends
If c.Column = sel.Columns.Count Then
strOutput = strOutput & "[/tr]"
End If
Next
' Table ends
strOutput = strOutput & Chr(13) & "[/table]"
' copyToClipBoard
Dim x As DataObject: Set x = New DataObject
x.SetText strOutput
x.PutInClipboard
End Sub
| Prix | Qualité | |||
| Pondération | 55% | 45% | ||
| Offres | Prix | Note Prix | Note Qualité | Note globale |
| O1 | 100 | 1,00 | 0,00 | 0,55 |
| O2 | 550 | 0,18 | 1,00 | 0,55 |
[table]
[tr][td][right][/right][/td][td][right][/right][/td][td][b]Prix[/b][/td][td][b]Qualité[/b][/td][td][right][/right][/td][/tr]
[tr][td][right][/right][/td][td][b]Pondération[/b][/td][td][right][i]55%[/i][/right][/td][td][right][i]45%[/i][/right][/td][td][right][/right][/td][/tr]
[tr][td][b]Offres[/b][/td][td][b]Prix[/b][/td][td][b]Note Prix[/b][/td][td][b]Note Qualité[/b][/td][td][b]Note globale[/b][/td][/tr]
[tr][td][b]O1[/b][/td][td][right]100[/right][/td][td][right]1,00[/right][/td][td][right]0,00[/right][/td][td][right]0,55[/right][/td][/tr]
[tr][td][b]O2[/b][/td][td][right]550[/right][/td][td][right]0,18[/right][/td][td][right]1,00[/right][/td][td][right]0,55[/right][/td][/tr]
[/table]