Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
836to840
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
836to840
836to840
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bereich per Eingabefenster

Bereich per Eingabefenster
11.01.2007 17:39:42
Michael
Hallo liebe Profis,
ich möchte eine Funktion schreiben, bei der ich den Eingabe-Datenbereich in einem Abfragefenster zu Beginn definiere (der schwankt nämlich immer). Habe es bisher so probiert:
Set rngSelect = Application.InputBox
Ist mein Bereich jetzt "rngselect"? rngselect ist zu Beginn als range definiert. Wie berechne ich jetzt z.B. den Durchschnitt des Bereichs? So:
m = WorksheetFunction.Average(rngSelect) ?
Und wie gebe ich die errechnete Zahl dann in eine ebenfalls zu Beginn abgefragte Zelle aus?
Mir fehlen eben die Vokabeln, um mit VBA kommunizieren zu können... Sorry!
Kann mir da jemand vielleicht, trotz der vermutlichen Einfachheit meiner Frage, weiterhelfen?
Vielen Dank

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

Betreff
Datum
Anwender
Anzeige
AW: Bereich per Eingabefenster
11.01.2007 17:44:58
Ramses
Hallo
"...Habe es bisher so probiert:..."
Das ist korrekt
":..rngselect ist zu Beginn als range definiert. ..."
Das ist korrekt
"...m = WorksheetFunction.Average(rngSelect) ?..."
Das ist korrekt
"...Und wie gebe ich die errechnete Zahl ..."
Deine_Zelle = m
Gruss Rainer
AW: Bereich per Eingabefenster
11.01.2007 18:03:38
Michael
Das beruhigt mich zwar, aber was mache ich dann falsch?
Option Explicit
Public

Sub Ausreißer()
Dim rngSelect, Outliner, Output As Range
Dim msgTitel As String
Dim Nalimov, x, s, m As Integer
Dim n As Long
msgTitel = "Ausreißer-Test nach Nalimov"
On Error Resume Next
Set rngSelect = Application.InputBox _
(Prompt:="Bitte einen Zellbereich auf dem Tabellenblatt markieren")
Set Outliner = Application.InputBox _
(Prompt:="Bitte den verdächtigen Wert markieren")
Set Output = Application.InputBox _
(Prompt:="Bitte die gewünschte Ausgabezelle markieren")
If Not rngSelect Is Nothing Then
rngSelect.Count = n
m = WorksheetFunction.Average(rngSelect)
s = WorksheetFunction.StDev(rngSelect)
Nalimov = (Abs(Outliner - m) / s) * Sqr(n / (n - 1))
Output = Nalimov
Else
MsgBox "Sie haben keinen Bereich ausgewählt !", _
vbOKOnly + vbInformation, msgTitel
End If
End Sub

Vielen Dank
Anzeige
Hokus Pokus....
11.01.2007 18:11:20
Ramses
Hallo
Sorry,... aber meine Kristallkugel ist defekt.
Was funktioniert denn nicht ?
Gruss Rainer
Kristallkugel tut wieder :-)
11.01.2007 18:19:37
Ramses
Hallo
Hier mal der korrigierte Code
Sub Ausreißer()
    Dim rngSelect As Range, Outliner As Range, Output As Range
    Dim msgTitel As String
    Dim Nalimov As Double, s As Double, m As Double
    Dim n As Long
    msgTitel = "Ausreißer-Test nach Nalimov"
    'Wenn was nicht funktioniert
    'DAS immer abschalten :-)
    On Error Resume Next
    Set rngSelect = Application.InputBox _
    (Prompt:="Bitte einen Zellbereich auf dem Tabellenblatt markieren", Type:=8)
    Set Outliner = Application.InputBox _
    (Prompt:="Bitte den verdächtigen Wert markieren", Type:=8)
    Set Output = Application.InputBox _
    (Prompt:="Bitte die gewünschte Ausgabezelle markieren", Type:=8)
    'Hier könntest du die Fehlerbehandlung wieder einschalten :-)
    If Not rngSelect Is Nothing And Not Outliner Is Nothing And Not Output Is Nothing Then
        'Das gehört anders rum
        n = rngSelect.Cells.Count
        m = WorksheetFunction.Average(rngSelect)
        s = WorksheetFunction.StDev(rngSelect)
        Output.Value = (Abs(Outliner - m) / s) * Sqr(n / (n - 1))
    Else
        MsgBox "Einer oder mehrere Bereiche fehlen !", _
        vbOKOnly + vbInformation, msgTitel
    End If
End Sub

Probiers mal aus
Gruss Rainer
Anzeige
AW: Kristallkugel tut wieder :-)
11.01.2007 19:47:30
Michael
Hallo Rainer,
Vielen, vielen Dank! Es funktioniert! Das nimmt mir eine Menge Arbeit ab und ich hab wieder meine VBA-Kenntnisse etwas erweitert! Dann schaff ich es vielleicht doch noch, meine Diplomarbeit pünktlich abzugeben :-D
Gruß Micha

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige