Frage zu Evaluate

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Frage zu Evaluate
von: WalterK
Geschrieben am: 01.08.2015 10:52:48

Guten Morgen,
beim nachfolgenden Code wird in der Zeile ERGEBNIS.Copy die Meldung:
Fehler beim Kompilieren: Ungültiger Bezeichner angezeigt.
Ich möchte einfach das Ergebnis aus Evaluate kopieren und im darauf folgenden
Range("D4:D8") weiter verwenden.

Option Explicit
Sub BeispielMitEvaluate()
    
    Dim wks As Worksheet
    Dim ERGEBNIS As Double
    Set wks = Worksheets("Tabelle1")
    
    If wks.Range("F1") > 0 Then
        ERGEBNIS = Evaluate("1+(F1/100)") 'der Betrag von F1 wird im Code neu berechnet, soll  _
aber in F1 unverändert bleiben
    MsgBox ERGEBNIS
    ERGEBNIS.Copy 'hier soll der mit Evaluate ermittelte Betrag kopiert werden
    wks.Range("D4:D8").PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, _
        SkipBlanks:=False, Transpose:=False
        
    End If
End Sub

Besten Dank für die Hilfe und Servus, Walter

Bild

Betrifft: AW: Frage zu Evaluate
von: Beverly
Geschrieben am: 01.08.2015 11:08:53
Hi Walter,
meinst du vielleicht so:

Sub BeispielMitEvaluate()
    Dim wks As Worksheet
    Dim ERGEBNIS As Double
    Dim rngZelle As Range
    Set wks = Worksheets("Tabelle1")
    With wks
        If .Range("F1") > 0 Then
            ERGEBNIS = Evaluate("1+(Tabelle1!F1/100)")
            For Each rngZelle In .Range("D4:D8")
                rngZelle = rngZelle * ERGEBNIS
            Next rngZelle
        End If
    End With
End Sub



Bild

Betrifft: Besten Dank Karin, so passt es. Servus, Walter
von: WalterK
Geschrieben am: 01.08.2015 11:37:25


Bild

Betrifft: Arge Lücken im VBA-Verständnis, ...
von: Luc:-?
Geschrieben am: 01.08.2015 14:45:51
…Walter;
.Copy ist eine Methode, die nur auf Objekte, nicht auf Variablen angewendet wdn kann; deshalb die Fehlermeldung. Achte auf die Anzeigen des VBA-Intellisense!
Gruß, Luc :-?

Bild

Betrifft: Luc, deine Betreffs-Zeile hättest du dir sparen ..
von: WalterK
Geschrieben am: 01.08.2015 19:00:25
.. können!
Und deine Antwort auch, da meine Frage von Karin schon zu 100% beantwortet wurde. Und das habe ich auch bereits entsprechend geschrieben.
Servus, Walter

Bild

Betrifft: mache dir...
von: Beverly
Geschrieben am: 01.08.2015 20:20:18
Hi Walter,
...nichts draus, denn 99% seiner Beiträge sind sowieso nur heiße Luft. Der beste Weg ist, die Beiträge überhaupt nicht erst zu lesen sondern sie generell zu ignorieren.




Bild

Betrifft: Für deine Bemerkung könnte ich dich wegen ...
von: Luc:-?
Geschrieben am: 03.08.2015 04:03:58
…Verleumdung verklagen, Beverly;
in Wikipedia_Diskussionen gab's schon solche Ansinnen in anderen Fällen…
Luc :-?

Bild

Betrifft: Und deine Antwort....
von: Beverly
Geschrieben am: 03.08.2015 08:16:38
...an Walter kommt keiner öffentlichen Beleidigung nahe?!?! Wenn man auf diese Weise in den Wald hineinruft, muss man sich nicht wundern, was dann herausschallt.




Bild

Betrifft: Du bist da ja eine besonders laute und ...
von: Luc:-?
Geschrieben am: 03.08.2015 14:30:07
…unsachliche Ruferin, was man bei jemand, der aussieht wie die nette alte Oma von nebenan, nun gerade nicht erwarten würde. Die ganze Crux basiert allein auf übergroßem Misstrauen deinerseits und daraus resultierendem Missverständnis. Hinzu kommt eine gewisse „Gluckenmentalität“…
Trotzdem habe ich dir und deinen BTen nie unterstellt, was du von meinen behauptest.
Und, falls du meinst, ein dich beleidigendes GgBsp zu haben, irrst du dich. Ein sprichwörtlich gewordenes Bibelzitat taugt nicht als solches!
Schon mal etwas von Ehrabschneidung gehört…?!
Luc :-?

Bild

Betrifft: AW: Du bist da ja eine besonders laute und ...
von: Daniel
Geschrieben am: 03.08.2015 14:52:08
Komm Luc, brems dich mal wieder ein.
wenn ich mal daran denke, als was du mich schon alles bezeichnet hast, dann kann ich nur sagen, wer austeilt so wie du muss auch mal einstecken können.
Gruß Daniel

Bild

Betrifft: Beverly hat dir eine Lösung angeboten, aber ...
von: Luc:-?
Geschrieben am: 03.08.2015 04:09:42
…nicht erklärt, was du falsch gemacht hast, Walter,
aber daran scheinst du ja nicht interessiert zu sein, was dann auch erklärt, warum du nach x Fragen immer noch nicht solche einfachsten Grundlagen beherrschst…
Ansonsten ist mir meine Zeit zu schade, so etwas nochmal Ignoranten wie dir erklären zu wollen. Also stehle uns und wirklich Lernbegierigen nicht die Zeit mit Fragen, die dir schon die VBE-Hilfe beantworten kann.
RTFM, Luc :-?

Bild

Betrifft: Mein Gott Luc! Hier im Forum gibt ...
von: WalterK
Geschrieben am: 03.08.2015 13:09:13
.. es so viele nette und hilfsbereite Menschen, da kann ich gerne auf Deinen Palaver verzichten.
LMEIR, Walter

Bild

Betrifft: Das wirst du auch müssen! owT
von: Luc:-?
Geschrieben am: 03.08.2015 14:19:39
:-?

Bild

Betrifft: AW: Frage zu Evaluate
von: Gerd L
Geschrieben am: 03.08.2015 23:19:09
Servus Walter,
so geht die Ausgabe der Ergebnisse ins Blatt bei größeren Datenmengen einen Tick schneller.

Sub BeispielMitEvaluateIII()
     
     Dim wks As Worksheet
     Dim ERGEBNIS As Double
     Dim vntArray As Variant, X As Long, Y As Long
     
     Set wks = Worksheets("Tabelle1")
     
     If wks.Range("F1") > 0 Then
         ERGEBNIS = Evaluate("1+(" & wks.Name & "!F1/100)") 'der Betrag von F1 wird im Code neu  _
berechnet, soll _
        aber in F1 unverändert bleiben
        MsgBox ERGEBNIS
    
        vntArray = wks.Range("D4:D8").Value
        
        
        For X = LBound(vntArray) To UBound(vntArray)
        For Y = LBound(vntArray, 2) To UBound(vntArray, 2)
        
            vntArray(X, Y) = vntArray(X, Y) * ERGEBNIS
        
        Next
        Next
        
        wks.Range("D4:D8") = vntArray
        
     End If
 
 End Sub
Gruß Gerd

Bild

Betrifft: Besten Dank Gerd! Servus, Walter
von: WalterK
Geschrieben am: 04.08.2015 10:03:01


 Bild

Beiträge aus den Excel-Beispielen zum Thema "userform die zweite"