Kaikessa yksinkertaisuudessaan tilanne on se, että soluissa on merkintöjä tyyliin K5B2 ja K11A4. Nämä merkinnät pitäisi eritellä väliviivalla jotta ne näyttäsivät tältä: K5-B2 ja K11-A4.
Miten rakentaisin makron joka osaisi sijoittaa väliviivan oikeaan kohtaan?
Moikka jomjom!
tässä sulle Excel-VBA-Makropurkkaa...
ThisWorkbook:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Dim solu, apuStr As String, i As Integer
Application.ScreenUpdating = False
For Each solu In Cells.Range("A1:" & _
Replace(Cells.SpecialCells(xlCellTypeLastCell).Address, "$", ""))
With solu
apuStr = CStr(.Value)
For i = 1 To Len(apuStr)
If IsNumeric(Mid(apuStr, i, 1)) And _
Not IsNumeric(Mid(apuStr, i + 1, 1)) And _
Not Mid(apuStr, i + 1, 1) = "-" And _
Not Mid(apuStr, i + 1, 1) = "" Then
apuStr = Left(apuStr, i) & "-" & _
Right(apuStr, Len(apuStr) - i)
End If
Next i
.Value = apuStr: apuStr = ""
End With
Next
Application.ScreenUpdating = True
End SubAihe on jo aika vanha, joten et voi enää vastata siihen.