Excel Makro Problem... "Objekt erforderlich"

    • fkonline
      fkonline
      Bronze
      Dabei seit: 17.07.2007 Beiträge: 516
      Ich bastle gerade an einer Tabelle für SNGs. Man muss nur nen Button klicken, Platzierung eingeben und schwupps werden ein paar Sachen ausgerechnet und das neue Tourney eingetragen.

      Das Makro liegt in einem Modul (ist das ok?).
      Für jedes Limit wird eine neues Datenblatt angelegt, bzw. das alte kopiert -> Makro sollte auf allen Blättern laufen, sprich immer auf dem ActiveSheet.

      Ich möchte grade die Anzahl der verschiedenen Platzierungen eintragen.

      ActiveCell.Offset(0, -2).Range("A1").Select
      Bereich = ActiveSheet.Range(Cells(13, 4), ActiveCell)


      Cells(10, 4).Value = WorksheetFunction.Count(Bereich) '#1s
      Cells(10, 5).Value = WorksheetFunction.CountIf(Bereich, 2) '#2s

      Die Formel für die 1. Plätze ist natürlich falsch, ABER(!) Die Funktion 'Count' funktioniert so, 'CountIf' allerdings nicht...

      was ist hier los?

      Edit: Excel sagt "Fehler 424: Objekt erforderlich"
  • 8 Antworten
    • benda
      benda
      Bronze
      Dabei seit: 01.05.2006 Beiträge: 294
      lad mal die datei hoch...
    • Fred4BadBeat
      Fred4BadBeat
      Bronze
      Dabei seit: 18.01.2007 Beiträge: 666
      .... würd ich auch sagen, schaue mir das gerne an, aber jetzt dein Sheet nachprogrammieren ist auch doof, also lieber postest Du das bei megaupload etc., und dann fixt das schon einer
    • fkonline
      fkonline
      Bronze
      Dabei seit: 17.07.2007 Beiträge: 516
      stimmt natürlich :)

      http://uploaded.to/?id=ub2169

      da ist es :)
      was noch komplett fehlt ist die Standardabweichung und daraus dann die Winning Confidence (wie im 2+2 Sheet) + Charts. Man klickt auf Hinzufügen, das ruft das Makro auf und das trägt dann ein und aktualisiert alles.

      soweit der plan :D
    • Fred4BadBeat
      Fred4BadBeat
      Bronze
      Dabei seit: 18.01.2007 Beiträge: 666
      Kein Problem, ich wills auch nich benutzen, nur reparieren :) Please Standby *g*
    • fkonline
      fkonline
      Bronze
      Dabei seit: 17.07.2007 Beiträge: 516
      kann jeder gerne benutzen :) soll ein schlankes sheet werden, nicht so aufgebläht (lol @ 11MB @ 2+2) und simple to use (neues limit -> nur sheet neu einfügen und gogo :) )

      danke schön schonmal!
    • Fred4BadBeat
      Fred4BadBeat
      Bronze
      Dabei seit: 18.01.2007 Beiträge: 666
      Hmm, die Fehlermeldung hab ich weg, aber dafür das nächste Problem, und ob Deine Berechnungen jetzt stimmen hab ich auf die schnelle nich überprüft. Erstmal was essen.

      Kurzes Update trotzdem:

      Oben direkt nach dem sub habe ich ein

      "Dim Bereich As Range"

      eingefügt.

      Die Zuweisung dann mittels SET:

      "Set Bereich = Range(Cells(13, 6), ActiveCell) '% ITM"

      bzw

      "Set Bereich = ActiveSheet.Range(Cells(13, 4), ActiveCell)"

      Dann läuft es soweit. Was dann nich klappt, ist
      "ActiveCell.Offset(0, -4).Range("A1").Select"

      Was ich erstmal auskommentiert hab, mir gefällt das mit -4 nich und A1, keine ahnung, wo du da was hinschreiben möchtest, aber die Zeile klingt eh ziemlich suspekt *g*
    • fkonline
      fkonline
      Bronze
      Dabei seit: 17.07.2007 Beiträge: 516
      ja, sorry. das ist nen problem durch das eingeschobene Zählen der platzierungen.
      ich bewege dadurch die aktuelle zelle durch das blatt als würde ich klicken und kann dann mit activecell.xx arbeiten.
      muss da nicht mehr -4 sondern -2 sein, sonst verschiebt man die aktuelle zelle nach links aus dem blatt raus.

      danke soweit!!

      super, hab's am laufen! jetzt kann ich hoffentlich auch die anderen dinge einbauen :)
    • Fred4BadBeat
      Fred4BadBeat
      Bronze
      Dabei seit: 18.01.2007 Beiträge: 666
      Ok, wenn das soweit erstmal hilft, hätte die minimalen Änderungen gleich auch uploaden können. Das Problem war für mich nicht ganz klar, scheint irgendwie, als wenn die Variable "Bereich" nich funktioniert hat. Deswegen besser definieren, es ist ja ein Objekt ...

      Und zum Stil mit dem Bewegen durchs Arbeitsblatt: Sowas hab ich "früher" auch gemacht, ist aber eigentlich nich nötig, ggf. fehleranfällig und langsam.

      Du benutzt ja auch oben sowas wie "Cells(10, 9).Value = ...". Das Reicht normal, am Schluss das Activate ist natürlich ok zum manuellen weiterarbeiten.