ich stehe wie der Ochse vor dem Berg.
Ich habe 2 Spalten A und B. in beiden stehen ganze zahlen drin.
Ich möchte jetzt in Spalte B nach der größten Zahl suchen diese in eine Variable speichern. Zusätzlich soll in der gleichen Zeile die Zahl aus Spalte A in eine andere Variable schreiben.
beispiel:
B14 hat die größte Zahl dann B14 -> variable1 und A14 -> variable2
Ich wollte das eigentlich so lösen aber das klappt nicht. Die Variable anzahl wird richtig genommen aber die Variable nummer ist falsch.
Private Sub CommandButton1\_Click()
Dim anzahl As Integer
Dim nummer As Integer
Dim platz As Range
Set platz = Sheets("Statistik").Range("B1:B300")
anzahl = Application.WorksheetFunction.Max(platz)
Selection.Application.WorksheetFunction.Max(platz).Select
Selection.Offset(0, -1).Select
nummer = ActiveCell.Value
Set platz = Nothing
End Sub
na und, das Spiel hat mir als Kind viel Spass gemacht
Ich habe 2 Spalten A und B. in beiden stehen ganze zahlen
drin.
Ich möchte jetzt in Spalte B nach der größten Zahl suchen
diese in eine Variable speichern. Zusätzlich soll in der
gleichen Zeile die Zahl aus Spalte A in eine andere Variable
schreiben.
Private Sub CommandButton1\_Click()
Dim anzahl As Integer, nummer As Integer
With Sheets("Statistik").Range("B1:B300")
anzahl = Application.Max(.Cells)
nummer = .Cells.Find(anzahl).Offset(0, -1).Value
End With
MsgBox anzahl
MsgBox nummer
End Sub
und wie schaffe ich es noch die 2. größe und die 3. größte anzahl mit zugehöriger nummer zu finden.
ich dachte mir das so aber das problem ist dass zum einen wenn zwei gleiche zahlen in Spalte B drinstehen er nicht unterscheiden kann welche größer ist und deshalb immer nur eine verwendet. und ich habe noch einen error wenn zb.
„A2“ = 1 ; „B2“ = 1 und
„A3“ = 2 ; „B3“ = 1
dann kommt ein Laufzeilenfehler 1004
If Sheets("Statistik").Range("B3") 0 Then
anzahl2 = Application.WorksheetFunction.Large(bereich, 2)
nummer2 = Application.Cells.Find(anzahl2).Offset(0, -1).Value
Sheets("mappe1").Range("K27") = anzahl2
Sheets("mappe1").Range("I27") = nummer2
End If
If Sheets("Statistik").Range("B4") 0 Then
anzahl3 = Application.WorksheetFunction.Large(bereich, 3)
nummer3 = Application.Cells.Find(anzahl3).Offset(0, -1).Value
Sheets("mappe1").Range("K28") = anzahl3
Sheets("mappe1").Range("I28") = nummer3
End If