VBA FOR EACH Schleife
#1
Hallo=),

Ich möchte in einer FOR EACH Schleife für jede Zelle in einem bestimmten Bereich eine Formel eingeben die sich auf die Reihe bezieht.

'Private Sub CheckBoxSizing_Click()
'Dim Zelle1
'
'
'    If CheckBoxSizing.Value = True Then
'        Worksheets(1).Range("BY:BY,CC:CC,CG:CG,CK:CK,CO:CO,CS:CS,CW:CW").Select
'        Selection.EntireColumn.Hidden = False
'            For Each Zelle1 In Range("SizingToolMatrix")
'            Zelle1.Value = "=SizingTool(BY40;CC40;CG40;CK40;CO40)"   HIER MÖCHTE ICH ANSTELLE VON 40 DIE AKTIVE REIHE PRO ZELLE EUNFÜGEN
'            Next Zelle1
'        Range("E3").Select
'    End If
'    If CheckBoxSizing.Value = False Then
'        Worksheets(1).Range("BY:BY,CC:CC,CG:CG,CK:CK,CO:CO,CS:CS,CW:CW").Select
'        Selection.EntireColumn.Hidden = True
'        Range("E3").Select
'    End If 
'End Sub

Wenn ich anstelle von der function (=SizingTool) einfach "1" eingebe funktioniert es=(
Die Funktion läuft außerhalb ohne Probleme...
Hoffe mir kann jemand helfen =)=)

Grüße,
Linda
Top
#2
Moin Linda!

Ich gehe mal davon aus, dass =Sizingtool() eine UDF ist.
Allgemein ist es Quatsch (weil extrem langsam), eine Funktion per For Each in jede Zelle einzeln einzutragen.
Man schreibt sie gleich in den gesamten Bereich.

Natürlich ungetestet, weil ich die Datei nicht kenne:

Code:
Range("SizingToolMatrix").Formula = "=SizingTool(BY40;CC40;CG40;CK40;CO40)"

Ansonsten:
Her mit der Datei!

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Topology
Top
#3
Hey vielen Dank, :):):)

Hab mal eine vereinfachte Version hochgeladen.

Es geht vor allem darum das in jeder Zeile ja eine andere Formel steht,
bzw. die Werte nimmt es aus der jeweiligen Zeile.

Wenn ich nur einen Text hineinschreibe klappts



Grüße,


Angehängte Dateien
.xlsm   Versuch For Each.xlsm (Größe: 22,59 KB / Downloads: 2)
Top
#4
Die Datei hat ja nicht allzu viel mit dem Problem zu tun.
Hast Du den Code aus meinem letzten Post überhaupt ausprobiert?  Undecided

Da in der Funktion weder Spalten noch Zeilen per Dollar $ fixiert sind, passt sich die Formel automatisch an die jeweilige Zeile an!

Nix Schleife oder so …

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Topology
Top
#5
Ja hab ich versucht klappt auch nicht=(


oder habe ich was falsch gemacht?


siehe Anhang


Angehängte Dateien
.xlsm   Versuch Range.xlsm (Größe: 22,79 KB / Downloads: 4)
Top
#6
-----
Top
#7
Hi,

da Du ja einen Namen definiert hast, reicht das:


Code:
Private Sub CheckBox1_Click()


    If CheckBox1 Then
        Worksheets(1).Range("E:E").EntireColumn.Hidden = False
        Range("MATRIX").FormulaLocal = "=Funktion(B4;C4)"
    Else
        Worksheets(1).Range("E:E").EntireColumn.Hidden = True
        Range("MATRIX") = "keine Formel"
    End If
    Range("A1").Select
End Sub
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • Topology
Top
#8
Hi,l

was sollte dieser Beitrag bezwecken?

Teste mal dieses Makro:
Option Explicit

Private Sub CheckBox1_Click()
Dim Zell

   If CheckBox1.Value = True Then
       Worksheets(1).Range("E:E").Select
       Selection.EntireColumn.Hidden = False
       Range("MATRIX").FormulaLocal = "=Funktion(B4;C4)"
'            For Each Zell In Range("MATRIX")
'            Zell.Value = "1" '"=Funktion(B4;C4)"
'            Next Zell
       Range("A1").Select
   End If
   If CheckBox1.Value = False Then
       Worksheets(1).Range("E:E").Select
       Selection.EntireColumn.Hidden = True
       For Each Zell In Range("MATRIX")
           Zell.Value = "keine Formel"
           Next Zell
       Range("A1").Select
   End If
End Sub

Ooh, zu spät! Edgars Lösung ist besser.
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • Topology
Top
#9
Thumbs Up 
Heart Heart Heart Heart Heart Heart Heart

VIELEN DANK

Klappt einwandfrei =D


liebe Grüße aus Südtirol=)

Angel Angel Angel
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste