Zum Inhalt springen

Wer kennt sich gut mit Funktionen bei Excel aus?


Crash2001

Empfohlene Beiträge

Hi :)

Ich suche bei Excel eine Formel, um folgendes zu realisieren:

den höchsten Wert einer Tabelle per Formel ermitteln lassen, wenn man einen "festen und einen variablen Teil" hat. :confused:

also z.B. bei D001-D100 soll der das Ergebnis D100 oder auch nur die Variable 100 liefern.

Ausserdem versuche ich auch noch, alle Zellen in denen ein fester Wert mit anschliessender Variablen steht zusammenzuzählen. (Ist also nach dem gleichen Prinzip.)

Ich krieg das einfach nicht hin.

MfG Crash2001 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmmm.. wahrscheinlich verstehe ich dich jetzt falsch, aber du mußt doch in Excel nur den Bereich für die Formel angeben. Ob da nun feste oder Variable Werte drin stehen ist Excel da so ziemlich egal. Du mußt halt nur um immer das aktuelle Ergebnis zu haben das automatische neu berechnen in den optiionen aktiviert habe.

Aber das war es sicher nicht dein Problem, oder? :confused:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi

Nein, leider nicht.

sobald ich z.B. die Anzahl der Zellen in denen entweder D1 , D2, D3, ..., D100, ...

usw. steht anzeigen lassen will, oder den maximalen Wert, macht der das nicht. Ich weiss zumindest nicht, wie das gehen soll - gehen tut das aber doch bestimmt. :confused:

MfG Crash2001 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi crash.

uns und vor allem dir wäre geholfen, wenn du das problem etwas präziser formulieren könntest.

es gibt garantiert eine funktion, die sowas kann. wenn man nur weiss, WAS sie können soll... ;)

excel hat einige statistik-funktionen, die scheinen mir hier angebracht. sowas wie "k-größte" oder "max" oder so?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

Also nochmal genauer:

Ich habe eine Liste von CDs gemacht, wo jeder CD eine oder mehrere Nummern mit einem festen Teil davor zugeordnet sind. Also z.B. eine CD hat die Lagernummer D001 oder eine andere die Lagernummer D100-D103.

Nun will eine Formel haben, die mir höchsten Wert ausgibt, der mit D anfängt, damit ich da mit der Nummer weitermachen kann. (Muss nicht D103 sein, reicht auch nur die 103.)

Ausserdem hätte ich gerne die Anzahl der Zellen, deren Inhalt mit dem Buchstaben D anfangen, da ich z.B. auch Lagernummern habe, die mit E oder mit S anfangen.

Diese 2 Formeln kriege ich jedoch einfach nicht hin.

MfG Crash2001 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich glaub da wirst mit VBA anfangen müssen.

Wenn ich dich recht verstehe, hast Du eine Spalte (BSP "A") und dort stehen verschiedene Strings drinnen.

Das mit der Anzahl sollte wie folgt funktionieren.

Dim zelle as string

dim zähler as string

dim a as integer

dim e as integer

dim d as integer

zähler="1"

a=1

e=1

d=1

zelle = range("a1").value

while zelle <> "0"

if (left(zelle,1)="d") or (left(zelle,1)="D")Then

d=d+1

endif

if (left(zelle,1)="e") or (left(zelle,1)="E")Then

e=e+1

endif

if (left(zelle,1)="a") or (left(zelle,1)="A")Then

d=d+1

endif

zähler=zähler+1

zelle="a"+zähler

wend

msgbox("A = "+a)

msgbox("E = "+a)

msgbox("D = "+a)

sollte eigentlich funktionieren, hab es aber nicht überprüft. Bin mir aber nicht sicher ob es das ist was Du gesucht hast???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi

@Mike Lorey

Erstmal danke für deine Mühe. Der Text ist ja schön und gut, aber was mach ich jetzt damit? :confused: Mit VBA kenn ich mich nämlich noch absolut nicht aus - war aber bisher auch noch nicht notwendig. ;)

Ach ja, was meinst du denn genau mit strings? Also Bedingungen (was das Wort ja auf deutsch eigentlich heisst) sind das nicht, sondern einfach nur Lagernummern. Oder sind die in dem Fall auch strings? :confused:

Also das müsste doch eigentlich auch so unter Excel zu realisieren sein, oder?

MfG Crash2001 :)

[ 07. Juni 2001: Beitrag editiert von: Crash2001 ]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Tach,

natürlich ist es unter Excel realisierbar, da VBA ein Bestand teil von Excel ist ;) .

Also die Formel:

LINKS(zelle,1)

gibt dir den ersten Buchstaben deines Strings (Zeichenkette) zurück. D.h. wenn Du eine extra Spalte einführst kannst Du dort immer deine Ds und Es und As.... An der Auswertung sitzt ich selber noch, aber ich mail dir mal meine Testtabelle (mit VBA).

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi

@Mike Lorey

Danke erstmal für die Tabelle. Das ist eigentlich das, was ich gesucht habe. Ich sehe grad, der schreibt die sogar noch zusätzlich in ein anderes Blatt rein. *wirklich gut.* :cool:

Was muss ich denn ändern, wenn ich die Liste erst in der Spalte C anfangen lassen will? Und geht das vielleicht auch noch, dass man auf dem Hauptblatt die Spalten mit Länge A.Nr., Cat und Nr. nicht braucht? Dann wäre das echt ideal für meine Zwecke. :cool:

MfG Crash2001 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi, gerne.

Also der Code für Spalte "C" sieht so aus.

Sub test()

Dim zelle As String

Dim zähler As String

Dim a As String

Dim e As String

Dim d As String

Dim hilf As String

zähler = "2"

a = 0

e = 0

d = 0

tbla.Range("a2:f60000").Clear

tbld.Range("a2:f60000").Clear

tble.Range("a2:f60000").Clear

zelle = Range("c2").Value

While zelle <> ""

If (Left(zelle, 1) = "d") Or (Left(zelle, 1) = "D") Then

d = d + 1

hilf = d + 1

tbld.Range("a" + (hilf), "e" + (hilf)).Value = Tabelle1.Range("a" + zähler, "e" + zähler).Value

tbld.Range("g2").Formula = "=max(d2:d" + hilf + ")"

End If

If (Left(zelle, 1) = "e") Or (Left(zelle, 1) = "E") Then

e = e + 1

hilf = e + 1

tble.Range("a" + (hilf), "e" + (hilf)).Value = Tabelle1.Range("a" + zähler, "e" + zähler).Value

tble.Range("g2").Formula = "=max(d2:d" + hilf + ")"

End If

If (Left(zelle, 1) = "a") Or (Left(zelle, 1) = "A") Then

a = a + 1

hilf = a + 1

tbla.Range("a" + (hilf), "e" + (hilf)).Value = Tabelle1.Range("a" + zähler, "e" + zähler).Value

tbla.Range("g2").Formula = "=max(d2:d" + hilf + ")"

End If

zähler = zähler + 1

zelle = Range("c" + zähler).Value

Wend

Range("i4").FormulaR1C1 = a

Range("i5").FormulaR1C1 = d

Range("i6").FormulaR1C1 = e

End Sub

Was in dem Fall benötigt wird, ist das Feld Nr, da es in diesem Fall für die Max Berechnung notwendig ist. Geht sicher auch anders aber hatte keinen Bock drauf.

An deiner Stelle würde ich mir ein Formular erstellen (VBA) in dem ich die Eingabe von neuen CDs mach und mit dem ich auch CDs auswählen kann.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi

Danke erstmal, aber was mache ich jetzt eigentlich mit dem Code? Einfach in Excel einfügen geht doch nicht. Da ich von VBA absolut keine Ahnung habe... :rolleye: Wäre es vielleicht möglich, dass du mir das nochmal als xls-file schicken könntest? *Thx* Wie ich in das Makro reinkomme hab ich ja schon rausgekriegt, nur wenn ich das durch deinen neuen Text ersetze, macht der da was falsch.

MfG Crash2001 :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...