Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Am 06.11.2011 10:01, schrieb gooly:
Hello again,

mit Pitonyaks code [Listing 423] kann ich NamedRanges setzen, die auch nach Ablauf des Macros 'dableiben':

Sub AddNamedRange()
  Dim oRange     ' The created range.
  Dim oRanges    ' All named ranges.
  Dim sName$     ' Name of the named range to create.
  Dim oCell      ' Cell object.
  Dim s$
  sName$ = "MyNRange"
  oRanges = ThisComponent.NamedRanges
  If NOT oRanges.hasByName(sName$) Then
    Dim oCellAddress As new com.sun.star.table.CellAddress
    oCellAddress.Sheet = 0     'The first sheet.
    oCellAddress.Column = 1    'Column B.
    oCellAddress.Row = 2       'Row 3.
    s$ = "$Sheet1.$B$3:$D$6"
    oRanges.addNewByName(sName$, s$, oCellAddress, 0)
  End If
  oRange = ThisComponent.NamedRanges.getByName(sName$)
  oCell = oRange.getReferredCells().getCellByPosition(0,0)
  Print oCell.getString()
End Sub

Aber, was mach ich, wenn ein NamedRange solchen Namens schon existiert und womöglich falsch (weil alt) dimensioniert ist? Wie kann ich den löschen oder ändern?
Hallo hier spricht dein privat-Programmierer Frieder :-)
Hier ein Makro von mir , mit dem du Benannte Bereiche wieder Löschen kannst.:
Sub RemoveNamedRange()
  Dim oRanges    ' All named ranges.
  Dim sName$     ' Name of the named range to create.
  sName$ = "MyNRange"
  oRanges = ThisComponent.NamedRanges
  If  oRanges.hasByName(sName$) Then
      oRanges.removeByName(sName$)
      MsgBox "Der Zellbereich " & sName$ & " wurde entfernt." ,0 , "Hallo"
  End If
End Sub



Es gelingt mir nicht einmal einen existierenden NamedRange im Namenfeld des Sheets selber löschen, d.h., ich kann auch nicht mit Macro-Recording mal eine Lösung erzeugen.

Den Makrorekorder solltest du dir sowieso schnell abgewöhnen, wenn du zuverlässige Makros haben willst.

Gruß Frieder


--
Informationen zum Abmelden: E-Mail an users+help@de.libreoffice.org
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.