Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
300to304
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
300to304
300to304
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

range-objekt

range-objekt
02.09.2003 15:23:12
joel
hallo

hab ein range-objekt X
aus diesem möchte ich nun ein neues range-objekt Y, sodass
Y die felder von X enthält, die die bedingung Z erfüllen.

hab mal ne funktion irgendwo gesehen, weiss aber nicht mehr wo. hat sie jemand präsent?

vielen dank, gruss joel

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Aus großem Bereich einen kleinen Bereich machen
02.09.2003 15:42:41
Boris
Hi Joel,

in dem Stil:

Option Explicit


Sub neuerBereich()
Dim Bereich As Range
Dim Bereichneu As Range
Dim C As Range
Set Bereich = [a1:c10]
For Each C In Bereich
If C = "a" Then
If Bereichneu Is Nothing Then
Set Bereichneu = C
Else
Set Bereichneu = Application.Union(Bereichneu, C)
End If
End If
Next C
Bereichneu.Select
End Sub


Im Beispiel ist der Bereich A1:C10. Überprüft werden alle Zellen auf "a" - und aus diesen Zellen setzt sich dann der neue Bereich zusammen (der hier testweise am Ende selektiert wird).

Grüße Boris
Anzeige
danke, gibts keine funktion?
02.09.2003 15:48:04
joel
hall boris

danke für deinen code. eigentlich suchte ich eine bereits definierte funktion. werd mal deine variante übernehmen und noch bisschen warten, evtl. kennt jemand die gesuchte funktion..

gruss joel
Schilder doch mal genauer...
02.09.2003 15:50:37
Boris
Hi Joel,

...was du vorhast.
Natürlich gibt es auch Tabellenfunktionen - möglicherweise auch im Array nach dem Stil:
{=SUMME(WENN(A1:A100="a";B1:B100))}

Aber wie gesagt - gib doch mal etwas mehr Input.

Grüße Boris
AW: Schilder doch mal genauer...
02.09.2003 15:58:24
joel
hallo boris

hab ne tabelle T1, in der der user werte einträgt (kein zellenschutz)
in einer deckungsgleichen tabelle T2 (zellenschutz aktiviert) müssen nun alle zellen freigegeben werden, die in T1 einen gültigen Wert (in diesem fall eine Zahl) enthalten.

du siehst, mit deinem ersten vorschlag ist das problemlos machbar, jedoch suche ich jeweils nach optimiertem code..

hoffe, du kannst mir nochmals helfen

gruss
Anzeige
Möglichkeit mit Ereignismakro:
02.09.2003 17:03:31
Boris
Hi Joel,

Einfügen in das Modul der Tabelle T1:

Option Explicit


Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Ws As Worksheet
Set Ws = Worksheets("T2")
Application.ScreenUpdating = False
With Ws
.Unprotect
.Range(Target.Address).Locked = Not IsNumeric(Target)
.Protect
End With
Application.ScreenUpdating = True
End Sub


Allerdings gibt es durch das Aufheben und Setzen des Blattschutzes trotz Unterdrückung der Bildschirmaktualisierung immer ein leichtes Flackern.

Grüße Boris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige