Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Datumsbereich addieren und in Label schreiben
#1
Liebes Forum,

ich wende mich mit folgendem Problem an Euch.

Ich möchte eine Präsentation aus Excel erstellen.
Die Erstellung einer ppt aus Excel ist nicht das Problem.
Die Bereitstellung der Daten schon eher. Im Anhang befindet sich die Excel-Datei.
Folgendes möchte ich tun/soll das makro leisten:

1) Im Tabellenblatt "Deckblatt" in TextBox1 soll durch den Nutzer ein Anfangsdatum, in TextBox2 ein Enddatum eingetragen werden.
2) Im den Tabellenblatt "U1" sollen die Werte des durch Schritt 1 definierten Datumsbereiches jeweils für die Spalte "Ber1" bis "Ber6" addiert werden.
3) Im den Tabellenblatt "U2" sollen die Werte des durch Schritt 1 definierten Datumsbereiches jeweils für die Spalte "Ber1" bis "Ber6" addiert werden.
4) Die aus U1 und U2 ermittelten Summen sollen im Tabellenblatt "Bereich" in die entsprechenden "Label1" bis "Label 6"  eingetragen werden. Im Format
    Summe U1 Ber1 / Summe U2 Ber1. Auf den / zwischen den Summen kommt es an.

Dabei sollte es auch möglich sein, den Datumsbereich auf einen Tag festzulegen.


Ich bin gespannt ob jemand eine Lösung weiß.

Vielen Dank im Voraus.


Angehängte Dateien
.xlsm   Analyse.xlsm (Größe: 48,84 KB / Downloads: 5)
Antworten Top
#2
Dieser Code liegt meiner Anfrage zugrunde.
Er macht genau das was benötige, jedoch nur für e i n e n  bestimmten Tag.
Weiß jemand, wie ich den Code auf einen Datumsbereich anpassen kann?


Sub Testfinal()
Dim i As Long
      
datum = InputBox("")
For i = 4 To 10
Sheets("Bereich").OLEObjects("Label" & i).Object.Caption = Sheets("UE").Cells(Day(datum) + 2, i) & "/" & Sheets("UA").Cells(Day(datum) + 2, i)
      
Next i
 
End Sub
Antworten Top
#3
Hi,

(19.01.2017, 20:07)tmessers schrieb: Er macht genau das was benötige, jedoch nur für e i n e n  bestimmten Tag.

Ich kann mir nciht vorstellen, daß dieser Code das macht, was Du willst.
Wenn ich den in Deiner geposteten Datei teste, kommen Fehler und am Ende kommt nicht das raus, was soll.
  1. die Variable datum ist nicht deklariert
  2. stimmen die Blattnamen nicht.
  3. stimmt der Bereich der For-Schleife nicht. Es stimmt die Spaltenzahl nicht (weder 4 - 10, noch 1 - 6 wie bei den Labels). Entweder werden die falschen Spalten addiert oder die Labels werden nicht umbenannt
  4. werden die Labeltexte in / umbenannt.
[-] Folgende(r) 1 Nutzer sagt Danke an Rabe für diesen Beitrag:
  • tmessers
Antworten Top
#4
Hallo Rabe,

Du hast recht. Der Code entstammte einer Datei die anders aussieht.
Im Anhang befindet sich die angepasste Excel Datei. Code und Datei passen zusammen.
Die tut was sie soll aber eben nur für einen Tag.

Deine Einwände 2-4 sollten damit ausgeräumt sein.


Angehängte Dateien
.xlsm   Analyse.xlsm (Größe: 45,83 KB / Downloads: 3)
Antworten Top
#5
Die Lösung sieht wie folgt aus, passt aber nicht mehr zu der im Forum eingestellten Datei.



For Each zelle3 In wsQuelle.Sheets(2).Range(Cells(8, 1), Cells(Rows.Count, 1).End(xlUp))
    
    If wsQuelle.Sheets(2).Cells(zelle3.Row, 1) = Datum1 Then
        irow3 = zelle3.Row
   
End If

Next zelle3

For Each zelle4 In wsQuelle.Sheets(2).Range(Cells(8, 9), Cells(Rows.Count, 1).End(xlUp))
    
    If wsQuelle.Sheets(2).Cells(zelle4.Row, 1) = Datum2 Then
    irow4 = zelle4.Row
    
    
    End If

Next zelle4

For i = 5 To 10

Wert1 = Sheets(2).Application.WorksheetFunction.Sum(Range(Cells(irow3, i), Cells(irow4, i)))
wert2 = Sheets(2).Application.WorksheetFunction.Sum(Range(Cells(irow3, i), Cells(irow4, i)))

'Ausgabe in den Labels
Sheets(3).OLEObjects("Label" & i).Object.Caption = Wert1 & "/" & wert2


Gruß

tmessers
Antworten Top
#6
Hola,

auch interessant:

http://www.clever-excel-forum.de/thread-3037.html

Gruß,
steve1da
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste