Excel Frage


Indurus

Recommended Posts

Surft nur im ASB

@Relii

Dazu brauchst du kein VBA. Funktioniert einwandfrei mit einer Matrixformel:

{=SUMME(WENN((Monatsliste!B:B=$A$1)*(Monatsliste!A:A=$B1);Monatsliste!C:C;0))}

Heißt soviel wie: Wenn im Tabellenblatt "Monatsliste" Spalte B das Datum mit dem Wert in Zelle A1 und im Tabellenblatt "Monatsliste" Spalte A der Name mit dem Wert in Zelle B1 übereinstimmt, summiere die Werte im Tabellenblatt "Monatsliste" Spalte C. Ansonsten gib "0" aus.

excel_screenshot.jpg

bearbeitet von lx99

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

legende

danke für die rasche antwort. leider brauch ich dafür doch vba, weil in weiterer folge für jeden tag ein XML erstellt wird, das dann weiterejagt wird usw.... ;) (außerdem würde ich gerne leerwerte, wie in dem beispiel zB "Cäsar 0" komplett weglassen, weil die datenmenge in die hunderte geht und man dann einen haufen 0er hätte)

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Surft nur im ASB
Relii schrieb vor 1 Stunde:

danke für die rasche antwort. leider brauch ich dafür doch vba, weil in weiterer folge für jeden tag ein XML erstellt wird, das dann weiterejagt wird usw.... ;) (außerdem würde ich gerne leerwerte, wie in dem beispiel zB "Cäsar 0" komplett weglassen, weil die datenmenge in die hunderte geht und man dann einen haufen 0er hätte)

OK...wenn daraus ein XML File werden soll, gehe ich davon aus, dass du eine passende XSD hast?

An der müsste man sich natürlich orientieren, um das Excel Sheet korrekt aufzubauen. Um was geht es dir jetzt genau? Benötigst du einfach den Code, um alle befüllten Zeilen eines Tabellenblattes durchzulaufen? Der würde dann etwa so aussehen:

Sub Transaktion()

Dim arr()
Dim i As Integer
Dim intLine As Integer
Dim strDate As String
Dim bFound As Boolean

strDate = "01.01.2001"
ReDim arr(2, 0)

With ActiveWorkbook.Sheets("monatsliste")
    '### Starte in Zeile 2 ###
    intLine = 2
    '### Schleife, solange Inhalt in Spalte A ###
    While .Range("A" & intLine).Value <> ""
        '### Wenn in Spalte B Datum korrekt ist ###
        If .Range("B" & intLine).Value = strDate Then
            '### Wenn Array noch leer ist ###
            If arr(0, 0) = "" Then
                '### Name in Array eintragen ###
                arr(0, 0) = .Range("A" & intLine).Value
                '### Datum in Array eintragen ###
                arr(1, 0) = .Range("B" & intLine).Value
                '### Transaktion in Array eintragen ###
                arr(2, 0) = .Range("C" & intLine).Value
            Else
                '### Name schon einmal gefunden = falsch ###
                bFound = False
                '### Alle schon gefundenen Datensätze durchlaufen ###
                For i = 0 To UBound(arr, 2)
                    '### Wenn Name übereinstimmt ###
                    If arr(0, i) = .Range("A" & intLine).Value Then
                        '### Name schon einmal gefunden = wahr ###
                        bFound = True
                        '### Transaktionswert um neuen Wert erhöhen ###
                        arr(2, i) = arr(2, i) + .Range("C" & intLine).Value
                    End If
                Next i
                '### Wenn Name zum ersten Mal gefunden wird ###
                If bFound = False Then
                    '### Obergrenze Array um 1 erhöhen ###
                    i = UBound(arr, 2) + 1
                    ReDim Preserve arr(2, i)
                    '### Name in Array eintragen ###
                    arr(0, i) = .Range("A" & intLine).Value
                    '### Datum in Array eintragen ###
                    arr(1, i) = .Range("B" & intLine).Value
                    '### Transaktion in Array eintragen ###
                    arr(2, i) = .Range("C" & intLine).Value
                End If
            End If
        End If
        '### nächste Zeile ###
        intLine = intLine + 1
    Wend
    For i = 0 To UBound(arr, 2)
        '### Ausgabe der Array-Werte im Debug-Fenster ###
        Debug.Print arr(0, i) & " (" & arr(1, i) & "): " & arr(2, i)
    Next i
End With

End Sub

 

bearbeitet von lx99

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

  • 1 month later...
Sendestörung

Gibt es eine Möglichkeit, Statistiken aus dem ÖFB-System in eine Excel-Tabelle zu übertragen, damit man absolvierte Spiele, Einsatzminuten und so weiter berechnen kann?

Wenn ich zum Beispiel die Leistungsdaten von diesem Profil markiere und Excel kopiere, stehen alle Daten untereinander in einer neuen Zeile, hier ein Beispiel:

Datum, Uhrzeit
Bewerb
Runde
Spiel
Ergebnis
Einsatzmin.
Tore
07.03.2020, 15:00 Uhr
Wiener Stadtliga
17
ASK Elektra - First Vienna FC 1894
0:2 (0:1)
90
0
28.02.2020, 19:30 Uhr
Wiener Stadtliga
16
First Vienna FC 1894 - Fav AC
3:0 (1:0)
90
0

Hätte es aber bei Excel ebenso aufgelistet wie auf der Homepage:
Bild-2021-01-05-211505.png

Gibt es eine Möglichkeit, damit diese Daten wie auf der Homepage (alle daten eines Spiels in einer Zeile, das nächste Spiel darunter, usw.) in Excel exportiert werden können?

Hab diese Daten-Import von Excel probiert, da zeigt mir Excel jedoch zahlreiche Fehler an und es lässt sich nichts importieren von der ÖFB-Seite.

 

Hat jemand vielleicht eine Idee?

bearbeitet von Sendepause

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Postet viiiel zu viel

@Sendepause hab es kurz probiert, brauch auch öfter was von der Seite.. 

Bei mir wird auch alles unterhalb eingefügt. Wenn ich mit der rechten Maustaste den Punkt "Inhalte einfügen" und dann als Text einfüge, schmeißt es mir keine Fehler. Was kommt da bei dir?

Wann die Zeile dann bei dir untereinander erscheint, kannst sie nochmal markieren, dann mit Strg+C kopieren und an einer Stelle einfügen mit der Option Transponieren. Somit wird die Spalte als Zeile geschrieben. Eventuell hilft dir das weiter?

 

transponieren.png

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Sendestörung
soccerfreak89 schrieb am 6.1.2021 um 10:38 :

@Sendepause hab es kurz probiert, brauch auch öfter was von der Seite.. 

Bei mir wird auch alles unterhalb eingefügt. Wenn ich mit der rechten Maustaste den Punkt "Inhalte einfügen" und dann als Text einfüge, schmeißt es mir keine Fehler. Was kommt da bei dir?

Wann die Zeile dann bei dir untereinander erscheint, kannst sie nochmal markieren, dann mit Strg+C kopieren und an einer Stelle einfügen mit der Option Transponieren. Somit wird die Spalte als Zeile geschrieben. Eventuell hilft dir das weiter?

 

transponieren.png

nutze in Arbeit und Privat zwei verschiedene Excel-Versionen, beide bringen jedoch nicht gewünschten Erfolg.

Transponieren hat leider auch nicht geholfen. Hab es noch nicht geschafft, die Tabelle im Excel ohne umständliches Verschieben von Spalten oder Zellen, so in Excel zu kopieren, wie auf der Homepage zu sehen.

EDIT: Hab nun einen Weg gefunden und mir die Daten meines Teams aus dem Online-System rauskopiert. Hab dieselbe Methode auch mit dem Link von oben ausprobiert, ging aber nicht. Funktioniert also leider nur, wenn man angemeldet ist und sich die Spielerdaten direkt aus dem Online-System holt.
Aber es funktioniert jetzt! :super:


Danke @soccerfreak89 für deine Hilfe! :)

 

bearbeitet von Sendepause

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Im ASB-Olymp

Kann man in einer Zelle einen Reiter einfügen um aus einer anderen tabelle eine Zelle auszuwählen?

Kurze beschreibung falls es unverständlich ist:
ich hab eine Excel datei mit 2 tabellen/dukomente drinnen. aktuell hab ich in Tabelle 1 ein feld indem ich zb. E1 eingeben (E1 ist keine Zelle sonderen ein wert in einer tabelle) und es mir dann im feld daneben die dazugehörige wert ausliest aus Tabelle 2. Die Tabelle 2 besteht nur aus 2 Spalten wo in Spalte 1 eine Maschinenbezeichnung steht und in Splate 2 der dazugehörende durchmesser.

ich würde jetzt gerne statt die Maschinenbezeichnung (zB. E1, E2) einzgeben einfach einen Reiter haben wo ich meine gesuchte maschine nur mehr auswählen muss, geht das?

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

ASB-Halbgott
14 minutes ago, damich said:

Kann man in einer Zelle einen Reiter einfügen um aus einer anderen tabelle eine Zelle auszuwählen?

Kurze beschreibung falls es unverständlich ist:
ich hab eine Excel datei mit 2 tabellen/dukomente drinnen. aktuell hab ich in Tabelle 1 ein feld indem ich zb. E1 eingeben (E1 ist keine Zelle sonderen ein wert in einer tabelle) und es mir dann im feld daneben die dazugehörige wert ausliest aus Tabelle 2. Die Tabelle 2 besteht nur aus 2 Spalten wo in Spalte 1 eine Maschinenbezeichnung steht und in Splate 2 der dazugehörende durchmesser.

ich würde jetzt gerne statt die Maschinenbezeichnung (zB. E1, E2) einzgeben einfach einen Reiter haben wo ich meine gesuchte maschine nur mehr auswählen muss, geht das?

Schritt 1)

Datei -> Optionen -> Menüband anpassen -> Hakerl bei Entwicklertools

Schritt 2)

Jetzt ist oben am Menüband Entwicklertool eingeblendet.

Entwicklertools -> Einfügen -> Kombinationsfeld -> Rechtsklick auf das Kombinationsfeld -> Steuerelement formatieren -> Eingabebereich: [Maschinennamen], Zellverknüpfung: [beliebige Zelle im Umfeld des Kombi-Felds]

Jetzt müssten die Maschinen per Reiter ausgewählt werden können und in der Zelle aus dem Umfeld müsste dann eine Zahl ausgewiesen werden. Mithilfe von der kannst du dann per S-Verweis den Durchmesser suchen

Gibt sicher elegantere Lösungen, aber das haut sicher hin:)

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Im ASB-Olymp
01er Veilchen schrieb vor 2 Stunden:

Schritt 1)

Datei -> Optionen -> Menüband anpassen -> Hakerl bei Entwicklertools

Schritt 2)

Jetzt ist oben am Menüband Entwicklertool eingeblendet.

Entwicklertools -> Einfügen -> Kombinationsfeld -> Rechtsklick auf das Kombinationsfeld -> Steuerelement formatieren -> Eingabebereich: [Maschinennamen], Zellverknüpfung: [beliebige Zelle im Umfeld des Kombi-Felds]

Jetzt müssten die Maschinen per Reiter ausgewählt werden können und in der Zelle aus dem Umfeld müsste dann eine Zahl ausgewiesen werden. Mithilfe von der kannst du dann per S-Verweis den Durchmesser suchen

Gibt sicher elegantere Lösungen, aber das haut sicher hin:)

Danke, funktioniert.
kann ich dann gleich morgen in der arbeit testen ob das auch so funktioniert wie ich mir das gedacht habe!

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Ist zwar eher ein grunsätzlich mathematisches Problem aber trotzdem:

Wie kann ich denn eine Anzahl x nach Wert y in zB 3 Gruppen einteilen?
Also quasi ich hab Filiale 1 mit 1000€ Umsatz, Filiale 2 mit 2000€ Umsatz usw bis hin zu Filiale 10 mit 10.000€. 
Wie kann man da zB jeweils ein Drittel ausrechnen?

 

Ich mein ich habs mittels Excel relativ quick und dirty lösen können indem ich einfach der Größe nach sortiert habe und dann halt einfach die Gesamtzahl der Filialen gedrittelt habe und die Zeilen gezählt und eingefärbt habe. 
Eigentlich wollte ich eine bedingte Formatierung mit größer gleich und kleiner gleich machen aber ich bin anscheinend mathematisch zu deppert dafür die richtigen Werte herauszufinden :facepalm:

bearbeitet von ooeveilchen

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Harry Wijnvoord Fußballgott
ooeveilchen schrieb vor 1 Stunde:

Ist zwar eher ein grunsätzlich mathematisches Problem aber trotzdem:

Wie kann ich denn eine Anzahl x nach Wert y in zB 3 Gruppen einteilen?
Also quasi ich hab Filiale 1 mit 1000€ Umsatz, Filiale 2 mit 2000€ Umsatz usw bis hin zu Filiale 10 mit 10.000€. 
Wie kann man da zB jeweils ein Drittel ausrechnen?

 

Ich mein ich habs mittels Excel relativ quick und dirty lösen können indem ich einfach der Größe nach sortiert habe und dann halt einfach die Gesamtzahl der Filialen gedrittelt habe und die Zeilen gezählt und eingefärbt habe. 
Eigentlich wollte ich eine bedingte Formatierung mit größer gleich und kleiner gleich machen aber ich bin anscheinend mathematisch zu deppert dafür die richtigen Werte herauszufinden :facepalm:

Du willst sie in drei gleich große Gruppen Teilen? Dann suchst du nach Quantilen. Die Excel Funktion dazu wäre =QUANTIL(Array;alpha) wobei das Array der Bereich an Werten (in deinem Fall Umsätzen) ist und das Alpha gibt an, welches Quantil du haben möchtest. Für die Drittelung brauchst du das 1/3 und das 2/3 Quantil. Mit denen Kannst du dann die 3 Gruppen bilden! Die eine Gruppe die kleiner als das 1/3 Quantil ist, die zweite Gruppe zwischen dem 1/3 und 2/3 Quantil und die dritte Gruppe die größer als das 2/3 Quantil ist.

Wenn du zB 7 Gruppen bräuchtest, müsstest du das Ganze mit den Quantilen 1/7, 2/7, 3/7,..., 6/7 spielen!

bearbeitet von Indurus

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Indurus schrieb vor 24 Minuten:

Du willst sie in drei gleich große Gruppen Teilen? Dann suchst du nach Quantilen. Die Excel Funktion dazu wäre =QUANTIL(Array;alpha) wobei das Array der Bereich an Werten (in deinem Fall Umsätzen) ist und das Alpha gibt an, welches Quantil du haben möchtest. Für die Drittelung brauchst du das 1/3 und das 2/3 Quantil. Mit denen Kannst du dann die 3 Gruppen bilden! Die eine Gruppe die kleiner als das 1/3 Quantil ist, die zweite Gruppe zwischen dem 1/3 und 2/3 Quantil und die dritte Gruppe die größer als das 2/3 Quantil ist.

Wenn du zB 7 Gruppen bräuchtest, müsstest du das Ganze mit den Quantilen 1/7, 2/7, 3/7,..., 6/7 spielen!

Das ist natürlich eine sehr galante Methode. 
Danke! 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

ASB-Messias

Nachdem ich hier gerne mitlesen, muss/möchte ich auch gleich was nachfragen.
Ich hatte in der vorhergehenden Firma (schon über 10 Jahre her) eine Funktion, deren Name mir nimmer einfällt.

Ausgang: Ich bestellte mehrere Artikel auf verschiedene Bestellungen aufgeteilt.
Dafür erhielt ich für jede Bestellung vorweg eine Rechnung als Excel-Datei.

Bestellte ich einen Artikel mehrere Male, so war der natürlich in jedem Excel-File gelistet,
in den Packlisten allerdings als Gesamtmenge. Was mir das Abgleichen ein wenig verkomplizierte.

Da gab es eine Funktion, in welcher ich nach Artikelnummer gruppierte konnte, mit Summierung der verrechneten Menge.
Wie nennt sich diese Funktion?

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...


  • Folge uns auf Facebook

  • Partnerlinks

  • Unsere Sponsoren und Partnerseiten

  • Wer ist Online

    • Keine registrierten Benutzer online.