Wie Suboptimierer schon anmerkte, ist der Aufbau zur Auswertung geeignet.

Zu beachten ist allerdings: es sind zwangsläüfig negative Zeiten (Verschlechterung) zu erwarten. Da Excel damit nur um "1904"-Modus rechnen kann, ist VOR Einrichtung der Tabelle auf "1904" umzustellen:
Excel Optionen / Erweitert / Beim Berechnen dieser Arbeitsmappe / 1904-Datumswerte verwenden, hier den Haken setzen.

Mit dieser Einstellung erstellte ich mit den von Dir vorgeschlagenen Angaben mal eine Mustertabelle (siehe angefügte Bildschirmkopie).

In den Spalten mit der Differenz wird der aktuelle Wert der linken Spalte vom vorhergendem abgezogen, also die Verbesserung/Verschlechterung dargestellt. Damit wären Deine Anforderungen erfüllt, eine Übersicht ist möglich.

Zur besseren Übersicht dienen in meinem Beispiel die Zeilen 1 und 2.
Es wird die Ober-Untergrenze der gesamten Spalte angezeigt:
Zeile 1, Beste Zeit (geringster Wert): = MIN(C4:C7)
Zeile 2, schlechteste Zeit (höchster Wert): =MAX(C4:C7)

Diese besten/schlechtesten Zeiten werden in der Tabelle (hier nur bis Zeile 7 ausgeführt, ist natürlich erweiterbar) in der "Bedingten Formatierung" mit grünem/rotem Hintergrund hervorgehoben, die Markierungen passen sich damit den Gegebenheiten an.
In den Differenzspalten werden Verschlechterungen mit rotem Hintergrund angezeigt, ebenfall mit der "Bedingten Formatierung" erstellt.

Die "Bedingten Formatierung" sind in der Bildschirmkopie zu sehen.

Kommst Du damit klar?

Gruß aus Berlin

...zur Antwort

Eine Berechnung der "sichtbaren" Zellen erreichst Du mit
=TEILERGEBNIS(9;A2:A50)
Wobei die "9" Summe bedeutet (1=Mittelwert, 2=Anzahl,...)

Deine Frage mit dem Drucken scheint ja erledigt zu sein. Wie wäre es, in den dazugehörigen Antworten das mal zu erklären, sich zu bedanken, die beste Antwort auszuzeichnen, kurzum: Dich dort mal zu äußern?

Gruß aus Berlin

...zur Antwort

Die Antwort von TheHunter kann ich ebenfalls nicht nachvollziehen (XL2007).

Lösungsvorschlag:

Bedingte Formatierungen in Tabelle1 einsetzen
Tabelle1 mit "verschieben/kopieren" kopieren
jetzige Tabelle "Tabelle1 (2)" umbenennen in "Tabelle2"
(BedFormatierungen sind enthalten)
so oft wiederholen, bis die Anzahl benötigter Tabellen erreicht ist.

Jetzt ggf. diese "Mastertabelle" als Datei oder als Vorlage speichern.

Ist Dir damit geholfen?

Gruß aus Berlin

...zur Antwort

Die Formel, die hier hilft, ist:

=INDEX(Tabelle1!A:A;ZEILE())

Annahme: Die Quelle ist Tabelle1, Spalte A
Ziel ist Tabelle 2, Spalte A

dann übernimmt die Formel alle Werte aus Tabelle 1, auch eingefügte Zellen, in Tabelle2

Die Quellspalte (hier A:A) ist natürlich anpassbar.

Gruß aus Berlin

...zur Antwort

Wenn die Arbeit mit Array möglich ist, ist es die bessere Variante (Antwort tooob)

Dein Gedanke mit dem Zuweisen von Werten im Array ist richtig.
Allerdings würde ich eine einfachere Schleifenform wählen:

For i = 1 to 100 : W(i) = 3 : Next i  

Danach ist den Variablen W(1) bis W(100) der Wert 3 zugewiesen.

Übrigens kann man auch mehrfach dimensionieren: W(1,1) oder W(1,1,1)

Gruß aus Berlin

...zur Antwort

Dein Vorhaben, Eingaben bei Öffnung der Datei zu verlangen, ist nur mit einem Makro zu erreichen.

Für das Schreiben von Makros ist VBA (Visual Basic for Applications) nötig. Dieses ist in Excel bereits implementiert. Man muss es nur noch kennen und beherrschen.

Hier wäre ein Makro erforderlich, das beim Öffnen anfängt zu arbeiten: Private Sub Workbook_Open()

Kennst Du Dich mit Makros aus ?

Gruß aus Berlin

...zur Antwort
Excel-Diagramme

Hallo,

ich habe folgendes Problem :

Für ein Praktikum in der Uni muss ich ein Diagramm mit Hilfe von Excel erstellen. Anfangs dachte ich ist ja nicht so schwer, doch dann stellte sich folgendes Problem auf :

Ich soll die Werte von Ua
0,003
0,625 1,25 1,875 2,5 3,125 3,75 4,375 5 5,625 6,25 6,875 7,5 8,125 8,75 9,375 und die Werte von Uv 0,625 1,25 1,875 2,5 3,125 3,75 4,375 5 5,625 6,25 6,875 7,5 8,125 8,75 9,375

auf der Y-Achse auftragen und auf der X-Achse sollen die Werte von (0,1,2,3......,15) stehen. Das Diagramm bekomm ich auch hin, aber dann scheitert es daran das die Differenz, der einzelnen Werte, so klein ist, dass Excel mir das nicht vernünftig darstellen kann ( es liegt nicht an Excel, sonder an mir, das weis ich auch :D ) D.h im Grunde, dass sich die einzelnen Punkt überdecken und größten Teils kaum sichtbar ist, dass es sich um zwei eigenständige Funktionen handelt. Ich hab schon alles mögliche versucht und auch ausprobiert mit Skalierung ändern etc., aber nicht half, machte es eher noch schlimmer. Also wenn mir jemand helfen könnte wäre das echt sehr nett :)

Ich werde auch noch ein Bild anhängen wie es am Ende aussehen soll (Stufentabelle), vorab schon mal ich wollte mir durch Excel nur die Punkte der beiden Graphen darstellen lassen und sie dann per Hand verbinden ( auf das angehängte Foto bezogen)

MfG

Schubbydu 8)

P.s Alles was mit Grammatik und Syntax oder sonstigem zutun hat interessiert mich nicht :) also einfach gar nicht ansprechen.

...zur Frage

So kann das Stufendiagramm aussehen.

Da Du ja keine Erklärung wünschst, nur kurz der Hinweis auf "Punkte mit geraden Linien".

Gruß aus Berlin

...zur Antwort

Wenn ich Dich richtig verstehe, siehe mein Beispiel.

Auf Balken klicken, rechte Maustaste, "Datenbeschriftungen formatieren..."
anklicken: "Datenreihenname" ("Wert" abwählen)
und "Basis innerhalb"
und im Diagramm die "Legende" löschen.

Gruß aus Berlin

...zur Antwort

In einer Hilfsspalte (im Beispiel Sp B) setzt man eine Formel ein.

Wahlweise je nach gewünschtem Ergebnis die entsprechende Formel.

XL wandelt bei GROSS() alles in Großbuchstaben
bei GROSS2() die Wortanfänge in Großbuchstaben, oder
mit einer kleinen Manipulation, nur den ersten Buchstaben um.

Hier wird die Formel aus Zeile 3 die richtige sein.

Bei Bedarf kann man jetzt die Hilfsspalte kopieren und in Spalte A die Werte überschreiben.

Gruß aus Berlin

...zur Antwort

Hier mal auf die schnelle ein ganz einfaches Makro, das in der Sp B das Vorkommen (auch mehrfaches) des Wertes in Zelle C1 mit roter Füllfarbe markiert:

Sub suchen1()
such = Cells(1, 3) 'Suchwort aus C1
letzteZ = Range("B65536").End(xlUp).Row
For i = 2 To letzteZ
  If Cells(i, 2) = such Then
    Cells(i, 2).Select
    Selection.Interior.Color = 255 'rot
  End If
Next
End Sub  

Um die Markierungen wieder zu löschen:

Sub Markierung_weg()
Range("B2:B2000").Select
Selection.Interior.Pattern = xlNone
Range("c1").Select
End Sub  

Weiterer "Firlefanz" wie "geben Sie Ihr Suchwort in C1 ein" oder "Groß/Kleinschreibung beachten" kann und sollte in Deiner Tabelle von Dir selbst ohne Schwierigkeiten machbar sein, oder ?

Gruß aus Berlin

...zur Antwort

Hier die passende Bildschirmkopie zur Antwort von ProRatione.

angepasst ist Zelle D43 (statt x100) und Ausgabe (statt "0") = nichts

Gruß aus Berlin

...zur Antwort

Der Text des Makros schein wohl zu klein zu sein. Darum hier nochmal das Makro:

'Wert in x9 kommagetrennt
Dim Transp(10), Ort(10)
Sub AblPl_VorgL()
'Einlesen
Worksheets("WO-Vorgangsliste").Select
For i = 5 To 7
Transp(i) = Cells(i, 7)
Ort(i) = Cells(i, 9)
Next i
'Ausgeben
Worksheets("WO-Ablaufplan").Select
For i = 5 To 7
Cells(Int(Ort(i)), ((Ort(i) - Int(Ort(i))) * 10)) = Transp(i)
Next i
End Sub

Gruß aus Berlin

...zur Antwort

So läuft es:

    Private Sub Kalender_Click()

Dim ws As Worksheet
Dim strMeldung As String
Dim strTitel As String
Dim strAntwort As String
Dim varYear As Variant
Dim bytMonth As Byte
Dim bytDay As Byte
Dim bytWeekday As Byte
Dim strWeekday As String
Dim bytWeeknumber As Byte
Dim bytDummy As Byte

' Das Jahr des Kalenders der ausgegeben werden soll

strMeldung = "Geben Sie das Jahr ein!"
strTitel = "Eingabe Jahr"

strAntwort = InputBox(strMeldung, strTitel)
varYear = strAntwort

' Falls bereits ein Blatt mit dem Namen "Jahr xxxx" entsteht, ' soll dieses gelöscht werden
For Each ws In Worksheets
If ws.Name = "Jahr " & varYear Then ws.Delete
Next ws
' Ein neues Tabellenblatt mit dem Namen "Jahr xxxx" einfügen
Worksheets.Add
ActiveSheet.Name = "Jahr " & varYear

' Monatsüberschriften einfügen und formatieren

For bytMonth = 1 To 12
Cells(1, bytMonth) = bytMonth ' Monatszahl in Zeile 1
  'With Worksheets("Kalender")
     '.Range("A1:L35") = Worksheets("Kalender")
     '.Cells = "bytMonth"
     '.Value = Format(DateSerial(varYear, bytMonth, 1), "mmmm")
     '.Interior.ColorIndex = 36
     '.Font.Bold = True
  'End With
  
  ' Tage aufbereiten
  For bytDay = 1 To Day(DateSerial(varYear, bytMonth + 1, 0))
     With Cells(bytDay + 1, bytMonth)
       bytWeekday = Weekday(DateSerial(varYear, bytMonth, bytDay))
       
       ' Wochentage in Textformat aufbereiten
       Select Case bytWeekday
          Case 1
             strWeekday = "So"
          Case 2
             strWeekday = "Mo"
          Case 3
             strWeekday = "Di"
          Case 4
             strWeekday = "Mi"
          Case 5
             strWeekday = "Do"
          Case 6
             strWeekday = "Fr"
          Case 7
             strWeekday = "Sa"
       End Select
       
       ' Wochentage und Tage eintragen
       .Value = strWeekday & ", " & bytDay
       ' Samstage hellgrau hervorheben
       If bytWeekday = 7 Then
          .Interior.ColorIndex = 15
       End If
       
       ' Sonntage dunkelgrau hervorheben
       If bytWeekday = 1 Then
          .Interior.ColorIndex = 48
       End If
       ' Kalenderwoche eintragen
       bytWeeknumber = _
          Format(DateSerial(varYear, bytMonth, bytDay), "ww")
       If bytDummy < bytWeeknumber And strWeekday <> "So" Then
          bytDummy = bytWeeknumber
          .Value = .Value & " (" & bytDummy & ")"
          ' Formatierung Kalenderwoche >ZWEI FARBEN IN EINER ZELLE
          With .Characters _
               (Start:=InStr(1, .Value, "("), Length:=4).Font
             .Size = 8
             .Color = vbRed
          End With
       End If
     End With
  Next bytDay

Next bytMonth
End Sub

Einige Änderungen:
Name des TabBl (Active Sheet.Name ...)
Monatszahl in Zeile 1
Range("A1:L35") von Oubyi richtig bemerkt
'With Worksheets("Kalender")... als Kommentar

Sieht zwar nicht toll aus, aber funktioniert.

Gruß aus Berlin

...zur Antwort

Eine weitere Möglichkeit wäre das Sortieren.

Die Einträge in Spalte B bis H markieren,

Sortieren/Filtern
Benutzerdefiniertes Sortieren,
Sortieren nach: Spalte H
Reihenfolge: nach Größe (aufsteigend)

Spalte A (Rang) wird nicht mitsortiert.

Somit sind die Erfordernisse des Fragestellers erfüllt.

Gruß aus Berlin

...zur Antwort
Microsoft Excel - Februar / Schaltjahr im automatisierten Kalender

Juten Morjen - Again! (^_^)

Ich bastle - immer noch - an einem Excel-Kalender, der sich automatisch an das aktuelle Jahr anpasst. Das klappt bisher auch wunderbar. Die Tage und auch die Wochentage ändern sich von alleine, ganz entsprechend dem Jahr, welches man ein Tabellenblatt weiter hinten frei ändern kann.

Was fehlt sind zum einen die Kalenderwochen, die sich noch nicht selbstständig anpassen (im Bild ist z.B. die 4. Kalenderwoche zu sehen) und zum anderen das Ende vom Februar. Die Umstellung zum Schaltjahr macht mir ordentlich zu schaffen.

Nun suche ich Ideen, wie ich das so hinbiege, dass der Februar automatisch 28, bzw. 29 Tage hat, je nach Schaltjahr oder nicht.

Und eben, wie ich die Kalenderwochen automatisch korrekt angezeigt bekomme. Daran tüftle ich selbst gerade noch, aber vielleicht habt ihr ja flux 'ne gute Idee. (^.^)

So weit erstmal. Vielen Dank! ^^

Gruß, Rot-Fuxs


PS: Wen es interessiert, die Formeln die ich bisher nutze. Repräsentativ, hier vom 28. Februar:

Tage: =DATUM('Jahr anpassen'!$B$21;SPALTE()-7;ZEILE()-2)

Wochentage: =DATUM('Jahr anpassen'!$B$21;SPALTE()-8;ZEILE()-2)

'Jahr anpassen' ist das zweite Kalenderblatt. Da ist nur eine große Jahreszahl drauf, die verändert werden kann um den gesamten Kalender automatisch umzustellen.

Im Endeffekt ist das Format der formal dann dieses: =DATUM(Jahr;Monat;Tag)

'Jahr anpassen'!$B$21 = 2013

SPALTE()-7 = I-7 = 9-7 = 2 = Februar

ZEILE()-2 = 30-2 = 28

Im Prinzip sind alle Tage gleich, da ja immer die Spalten / Zeilen als Ausgangspunkt genommen werden. So funktionieren eben auch die Tage und Wochentage genau gleich, nur eben mit einem Spaltenversatz. und bei den Wochentagen sind die Zellen eben auf Wochentage (MO, DI, MI, ...) formatiert und nicht auf Zahlen.

...zur Frage

zum 29. Februar:

In der Zelle, in der der 29. (im Schaltjahr) erscheint oder nicht erscheint, prüfst Du, ob das anzuzeigende Datum noch Februar ist, oder schon März. Wenn schon März, dann KEINE Anzeige.
= WENN(MONAT(DATUM('Jahr anpassen'!$B$21;SPALTE()-7;ZEILE()-2))=2;DATUM('Jahr anpassen'!$B$21;SPALTE()-7;ZEILE()-2);"")

Gruß aus Berlin

...zur Antwort

Dieses Makro wird ausgeführt, wenn neu berechnet wird (...Calulate).
Im VBA-Monitor (erreichbar mit F11) in das entsprechende Arbeitsblatt (hier(Tabelle 1) kopieren und .... fertig.

Private Sub Worksheet_Calculate()
For i = 8 To 23 'von...bis Zeile
    Cells(i, 14).Select 'Zeile 8, Spalte 14 (N)
        Selection.Copy 'Formatierung holen
    Range(Cells(i, 15), Cells(i, 19)).Select 'auswählen Zielbereich 1
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False

Cells(i, 14).Select 'nochmal Formatierung holen
Selection.Copy
Range(Cells(i, 21), Cells(i, 24)).Select 'auswählen Zielbereich 2
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

Next i
End Sub

(natürlich gehören Next I und End Sub mit ins Makro, das will hier aber nicht in den Code)

Berichte mal, ob es so gedacht war.

Gruß aus Berlin

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.