![]() |
|
#1
|
|||
|
|||
![]()
Hi All,
Please ignore the title. this is for word not excel. Hope you guys are doing good. I have a manual list of superscripts like item^1 item^2 item^3 Is there a shortcut to have it read: item^2 item^3 item^4 Last edited by htownpaper; 12-08-2014 at 05:39 PM. |
#2
|
||||
|
||||
![]()
Is this for Word or Excel? Your title refers to Excel, but you've posted in the Word forum.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#3
|
|||
|
|||
![]()
sorry word.
|
#4
|
||||
|
||||
![]()
Assuming the numbers are superscripted text (not footnote/endnote references and the like), you could use a macro like:
Code:
Sub Demo() Application.ScreenUpdating = False With ActiveDocument.Range With .Find .ClearFormatting .Replacement.ClearFormatting .Text = "[0-9]@>" .Font.Superscript = True .Replacement.Text = "" .Format = True .Forward = True .Wrap = wdFindStop .MatchWildcards = True .Execute End With Do While .Find.Found .Text = CLng(.Text + 1) .Collapse wdCollapseEnd .Find.Execute Loop End With Application.ScreenUpdating = True End Sub For Mac macro installation & usage instructions, see: http://word.mvps.org/Mac/InstallMacro.html
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#5
|
|||
|
|||
![]()
quick question,
how could I set the increment the superscript based upon the value of the preceeding superscript. for example x^1 x^32 x^66 would become x^1 x^2 x^3 |
#6
|
|||
|
|||
![]()
got it!
Code:
Sub Demo() Application.ScreenUpdating = False With ActiveDocument.Range With .Find .ClearFormatting .Replacement.ClearFormatting .Text = "[0-9]@>" .Font.Superscript = True .Replacement.Text = "" .Format = True .Forward = True .Wrap = wdFindStop .MatchWildcards = True .Execute End With Do While .Find.Found If .Text = "0" Then .Text = CLng(.Text + 1) i = 1 Else .Text = CLng(i + 1) i = i + 1 .Collapse wdCollapseEnd .Find.Execute End If Loop End With Application.ScreenUpdating = True End Sub Last edited by macropod; 12-08-2014 at 06:33 PM. Reason: Added code tags & formatting |
#7
|
||||
|
||||
![]()
You could use:
Code:
Sub Demo() Application.ScreenUpdating = False Dim i As Long i = 0 With ActiveDocument.Range With .Find .ClearFormatting .Replacement.ClearFormatting .Text = "[0-9]@>" .Font.Superscript = True .Replacement.Text = "" .Format = True .Forward = True .Wrap = wdFindStop .MatchWildcards = True .Execute End With Do While .Find.Found .Text = i i = i + 1 .Collapse wdCollapseEnd .Find.Execute Loop End With Application.ScreenUpdating = True End Sub
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#8
|
|||
|
|||
![]()
actually this is right:
Code:
Sub Demo() Application.ScreenUpdating = False With ActiveDocument.Range With .Find .ClearFormatting .Replacement.ClearFormatting .Text = "[0-9]@>" .Font.Superscript = True .Replacement.Text = "" .Format = True .Forward = True .Wrap = wdFindStop .MatchWildcards = True .Execute End With i = 0 Do While .Find.Found .Text = CLng(i + 1) .Collapse wdCollapseEnd .Find.Execute i = i + 1 Loop End With Application.ScreenUpdating = True End Sub Last edited by macropod; 12-08-2014 at 06:35 PM. Reason: Added code tags & formatting |
#9
|
||||
|
||||
![]()
The code in your last post is essentially the same as what I posted in post #6, except that you have an unnecessary CLng conversion - '.Text = CLng(i + 1)'
PS: When posting code, please use the code tags. They're indicated by the # button on the posting menu.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
areriff | Word VBA | 5 | 08-21-2022 04:28 PM |
Insert superscript into a textbox | Deltaj | Word VBA | 3 | 11-30-2014 04:23 PM |
![]() |
docbike | Word | 4 | 04-07-2014 05:23 PM |
Combining Files--Superscript problem | lindajacques | PowerPoint | 0 | 01-06-2011 01:20 PM |
![]() |
louq | Word | 1 | 10-22-2009 09:29 AM |