Autor Thema: Wert aus Array löschen  (Gelesen 1255 mal)

Offline Joker

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
  • Let`s start !!
Wert aus Array löschen
« am: 23.07.03 - 15:44:05 »
Hi,
hab da eine Frage. Wie lösche ich am besten einen einzigen Wert aus einem Array.

Gruss
Martin

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Wert aus Array löschen
« Antwort #1 am: 23.07.03 - 15:54:10 »
Das mag als ein BEISPIEL dienen - arbeitet nur mit Strings, entfernt dafür den gesuchten String, auch wenn er mehrfach im Array vorkommt.

HTH,
Bernhard


Function DeleteMember(vMemberToDelete As Variant, vInitialList As Variant) As Variant
     '==============================================================================
     ' Purpose:        eliminate one value from a list of strings.
     ' ------------------------------------------------------------------------------------------------------------------------------------------------------------
     ' Arguments:                     Type                       Obs
     '   vMemberToDelete  |  I/-  |        Unneeded element, the one that will dessapear from the list
     '   vInitialList                |  I/-  |        Initial list, witch contains that element
     ' ------------------------------------------------------------------------------------------------------------------------------------------------------------
     ' Return:    list without the element
     ' ------------------------------------------------------------------------------------------------------------------------------------------------------------
     ' Created by: Cristi Voica on   04.07.2000            Modified by: Bernhard Koehler on 17.12..2002
     '==============================================================================
   
   Dim vFinalList () As Variant
   Dim i As Integer
   
   On Error Goto ErrorRoutine
   
   If Isempty (vInitialList) Then
      DeleteMember = ""   
      Exit Function
   End If
   
   If Isscalar (vInitialList) Then
      If vInitialList = "" Then
         DeleteMember = ""
         Exit Function
      Else
         DeleteMember = vInitialList
         Exit Function
      End If
   End If
   
   i = 0
   Forall member In vInitialList
      If Not (member = vMemberToDelete) Then
         Redim Preserve vFinalList(i) As Variant
         vFinalList(i) = member
         i = i +1
      End If
   End Forall
   
   If (i > 0) Then DeleteMember = vFinalList      
   Exit Function
   
ErrorRoutine:
   Call DisplayErrMsg ("DeleteMember")
   Exit Function
End Function

Offline Till_21

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 708
  • Geschlecht: Männlich
  • I love Germany
Re:Wert aus Array löschen
« Antwort #2 am: 23.07.03 - 15:55:47 »
zB :
listeneu:=@Trim(@ReplaceSubstring(LISTE;"zu loeschende String";" "));

gruss

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Wert aus Array löschen
« Antwort #3 am: 23.07.03 - 15:56:08 »
... per Lotus Script

Dim ws As New NotesUIWorkspace
Dim docThis As NotesDocument
Dim vValue As Variant
Dim x As integer

Set docThis = ws.CurrentDocument.Document
x = 3 ' # das zu löschende Element => der vierte Eintrag


vValue = docThis.DeinFeldname
vValue( x ) = ""
vValue = Fulltrim( vValue ) ' # Eintrag gelöscht und Liste wieder zusammengerückt, ohne leere Elemente...

... reicht dir das, oder brauchst du es auch in Formel?

ata
Grüßle Toni :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz