2012-06-20 13 views
5

Mam ciąg:
Range("T4").Value = "Rule 13s voilation"wartości Pisanie indeks w VBA

Chcę napisać 13s jak 1 s
tj 3 i s to indeks z 1.

Proszę sugerują, w jaki sposób powinny przejść o nim w

+1

+ 1. Nie wiem, dlaczego to downvoted. –

+3

@SiddharthRout: "Powiedz mi, jak zapisać wartości w indeksie dolnym w VBA." -> "To pytanie nie pokazuje żadnych wysiłków badawczych." To było moje wezwanie. PO zadawał już wiele pytań i powinien o tym wiedzieć. –

+0

@ Jean-FrançoisCorbett: Rozumiem. Doceniam, że wyjaśniłeś to. Jestem pewien, że OP będzie teraz dbał o przyszłość. :) –

Odpowiedz

9

Spróbuj wykonać następujące czynności:

Range("T4").Value = "Rule 13s voilation" 
Range("T4").Characters(Start:=7, Length:=2).Font.Subscript = True 

nie jestem pewien, jak to będzie pracować dla Ciebie z dynamicznymi długości strun.

+2

+1 pokonałeś mnie o sekundę :-) –

+0

+ 1 Dobry :) –

+0

+1 ładnie wykonane :) –

7

Spróbuj zrobić to ręcznie podczas nagrywania makra, a następnie przyjrzyj się wynikowemu kodowi. To da ci odpowiedź.

Oto oczyścić odpowiedź:

With Range("T4") 
    .Value = "Rule 13s voilation" ' (sic) 
    .Characters(Start:=7, Length:=2).Font.Subscript = True 
End With 
+0

+ 1 za dobrą odpowiedź. pecha na kilka sekund :) –

+0

+1 za równie dobrą odpowiedź :) –

1

mogę używać tej funkcji do Złącz, 2 komórki w jedną. pierwszy to tekst, drugi to serie odniesienia do uwag

Sub setRefWithRemark() 


Dim aCellRef, aCellRem, aCelTarget As Range 
Dim aRow As Range 

For Each aRow In Range("rgtensileRefWithRemark").Rows 
    Set aCellRef = aRow.Cells(1, 1) 
    Set aCellRem = aRow.Cells(1, 12) 
    Set aCellTarget = aRow.Cells(1, 17) 
    If aCellRef.Text <> "" Then 
     With aCellTarget 
      .value = aCellRef.Text & cTextSeparator & aCellRem.Text ' (sic) 
      .Characters(Start:=Len(aCellRef.Text) + 2, Length:=Len(aCellRem.Text)).Font.Superscript = True 
     End With 
    End If 
    Next 
End Sub 
Powiązane problemy