Bob, I have plenty of free space. Don't fixate on any particular file.
Will all excel files, this is situation.
You said there is not edit hyperlnk box, did you see screenshot. What I am only one to have a edit hyperlink box?
You say there is only insert one? Where is the remove button?
Send a screenshot with insert hyperlink with a remove button
Greetings,
I have the same experience on Excel 2004 on Mac OS X 10.5.5, that is
not getting the remove hyperlinks for multiple cells. Since my
workflow at work includes linking items to supporting documentation, I
created the following VB scripts to remove the hyperlinks. Being a VB
script, this will not work with Excel 2008, but it might give you
enough to write an AppleScript that does the same thing.
There is a fair amount of fixing the formatting once the hyperlink is
removed (based on the formatting I use), but this should hopefully
help. I don't know that I've tried this with an entire column
selected, maybe it works, if not just select cell 1 to n or use "all
sheets"
Sub RemoveAllHyperlinks()
theResult = "Cancel"
On Error Resume Next
theResult = MacScript("display dialog ""Remove Hyperlinks from the
current Selection or ALL SHEETS of the active workbook?"" buttons
{""Cancel"", ""Selection"", ""ALL SHEETS""} default button 2 with icon
2")
On Error GoTo 0
If theResult = "Cancel" Then Exit Sub
If theResult = "button returned:Selection" Then
thisSheet = ActiveWorkbook.ActiveSheet.Name
For Each h In Selection.Hyperlinks
Call RemoveAllHyperlinks_Do(h, thisSheet)
Next h
ElseIf theResult = "button returned:ALL SHEETS" Then
For Each sht In ActiveWorkbook.Sheets 'for every sheet in WB
thisSheet = sht.Name
For Each h In sht.Hyperlinks
Call RemoveAllHyperlinks_Do(h, thisSheet)
Next h
Next sht
End If
End Sub
Sub RemoveAllHyperlinks_Do(h, thisSheet)
'Get the formatting to reapply because removing
hyperlink messes-up formatting besides color & underlining
thisRange = h.Range.Address()
theFontFace =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Font.FontStyle
theNumFormat =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).NumberFormat
theAlignment =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).HorizontalAlignment
'theBorderFormat =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders.LineStyle
theTopBorder =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlTop).LineStyle
If theTopBorder <> xlLineStyleNone Then
theTopBorderWeight =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlTop).Weight
theBottomBorder =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlBottom).LineStyle
If theBottomBorder <> xlLineStyleNone Then
theBottomBorderWeight =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlBottom).Weight
theLeftBorder =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlLeft).LineStyle
If theLeftBorder <> xlLineStyleNone Then
theLeftBorderWeight =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlLeft).Weight
theRightBorder =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlRight).LineStyle
If theRightBorder <> xlLineStyleNone Then
theRightBorderWeight =
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlRight).Weight
h.Delete
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Font.FontStyle =
theFontFace
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).NumberFormat =
theNumFormat
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).HorizontalAlignment
= theAlignment
If theTopBorder <> xlLineStyleNone Then
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlTop).LineStyle
= theTopBorder
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlTop).Weight
= theTopBorderWeight
End If
If theBottomBorder <> xlLineStyleNone Then
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlBottom).LineStyle
= theBottomBorder
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlBottom).Weight
= theBottomBorderWeight
End If
If theLeftBorder <> xlLineStyleNone Then
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlLeft).LineStyle
= theLeftBorder
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlLeft).Weight
= theLeftBorderWeight
End If
If theRightBorder <> xlLineStyleNone Then
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlRight).LineStyle
= theRightBorder
ActiveWorkbook.Sheets(thisSheet).Range(thisRange).Borders(xlRight).Weight
= theRightBorderWeight
End If
End Sub