Hundebetreuungstabelle
#41
Hallo Klaus-Dieter....

vielen Dank für deine Rückmeldung

....sorry, ich bin es nochmal und habe nich einmal eine Frage:
Wenn ich die Datenblätter nun leere, um dann im Januar mit einer leeren Planung beginnen möchte, lösche ich dann irgendwelche Parameter?

....Lieben Gruß
....lieben Gruß

Claudia
Antworten Top
#42
Hallo Claudia, 

du brauchst nur die Daten auf dem Blatt Hundehotel Graf 2025 löschen. Das Blatt Übersicht wird ohnehin jedes mal beim Öffnen gelöscht und neu angelegt, damit alle Änderungen auf dem Blatt Hundehotel richtig und aktuell übernommen werden. Die Kundenliste kann ebenfalls neu angelegt werden. 
Habe da gerade noch ein paar Verknüpfungen gefunden, die nehme ich noch raus und stelle dir die Datei noch mal ein, damit es damit keine Probleme gibt.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#43
Hallo Claudia,

anbei die Datei ohne Daten.


Angehängte Dateien
.xlsm   Hundekalender 2025 (blanko) .xlsm (Größe: 333,92 KB / Downloads: 14)
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#44
Hallo Claudia,

war ein interessierter Mitleser deines hier geschilderten Vorhabens.
Habe allerdings in den Beiträgen keine Streitigkeiten erkennen können.
Es hat eben jeder seine Ansichten bzw. Prioritäten umgesetzt.

Allerdings ist dein Wille etwas zu bewegen bzw. zu begrenzen abseits deiner hiesigen Wünsche bemerkenswert
und wünsche dir in jeder Hinsicht viel Erfolg.

Mit freundlichem Gruß
Rudi'S
[-] Folgende(r) 2 Nutzer sagen Danke an Rudi'S für diesen Beitrag:
  • Christo, Klaus-Dieter
Antworten Top
#45
Hallo Rudi....
einen schönen guten Morgen und danke für deinen Beitrag. Ich bin froh hier viele nette Menschen kennengelernt zu haben,die mir den einen und anderen Tipp gegeben haben. Vielleicht bin ich auch aufgrund meiner persönlichen Situation zu sensibel sodass ich mich verlässt sah, den Post zu schreiben. Um so mehr freut es mich, dass alle hier sind, um sich gegenseitig zu helfen. Ich freue mich jedoch riesig, dass ich nun einen Punkt auf meine "to do" - Liste abhaken kann. Jetzt werde ich mich um ein Programm bemühen, womit ich meine Rechnungen schreiben kann.

Vielen Dank für deine Zeilen....ich wünsche dir ein schönes Wochenende 

Gruß Claudia
....lieben Gruß

Claudia
Antworten Top
#46
Hallo Claudia,

habe bei einem Test der Feiertagsfunktion festgestellt, dass die doch sehr lange läuft, was unter anderem daran liegt, dass ich das Kalendarium auf über vierzig Jahre festgelegt hatte. Das würde ich zunächst auf zehn Jahre verkürzen wollen. (Es lässt sich durch einfaches "ziehen" jederzeit bei Bedarf verlängern. Wenn ich da eine Lösung habe, melde ich mich noch mal.


Edit: habe den Zeitbedarf mal gemessen, auf meinem Rechner kommen da rund zwölf Minuten zusammen. Das wäre ja noch vertretbar, wenn man berücksichtigt, dass Änderungen am Kalendarium ja nicht so oft vorkommen  werden. Habe allerdings noch eine Idee, wie ich das Programmtechnisch optimieren kann. Die werde ich noch mal ausprobieren.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#47
Hallo Klaus-Dieter......,

du hattest ich in einer vorherigen Mail gefragt nach einem Rechnungsprogramm. Schau mal bitte, was ich hier gefunden habe.
Ich habe hier gerade mal ein wenig herum experementiert. Meine Kopfdaten lassen sich hier einfach eingeben. Jedoch würde ich hier die Bestandslisten ändern wolle

In der Excel-Vorlage gibt es mehrere Bestandslisten....ich gaube, eine würde mir vollkommen reichen, wo ich dann die einzelnen Positionen hinterlegen kann. Die Bestands-
liste ist wie folgt aufgebaut:

Bestellnummer - Bezeichnung - St. / Preis Netto - Anfangsbestand - Verkauf - Bestand ist - Mindesbestand  ........viele Positionen brauche ich glaube nicht. Ich möchte ganz gerne in meiner Rechnung folgende Postionen aufgelistet haben:

Betreuungstufe 1 - 8 (Kat 1-8) - Hundebetreuung - Zeitraum von / bis - Tage - Preis / Netto - Summe

Schau mal......könnte man die auf mich zuschneiden? Ich habe zudem gesehen, dass man in der Rechnung oben im Adressenfeld ein Pulldown-Menü hat, wo man nur den Kunden anklicken braucht und dieser dann automatisch übernommen wird. Ich bräuchte dann nur noch die Betreuungsstufe, Hundebetreuung oder Katzenbetreuung und den Zeitraum eingeben.

Lieben Gruß


Angehängte Dateien
.xlsx   Erstellung Angebot u. Rechnung.xlsx (Größe: 83,67 KB / Downloads: 8)
....lieben Gruß

Claudia
Antworten Top
#48
Hallo Claudia,

es ist kein Problem, so etwas in die andere Datei zu implementieren. Die Frage ist nur, ob das Finanzamt das akzeptieren würde. Das müsstest du abklären. Wie ich vermute, würde es auf ein Kleingewerbe ohne Umsatzsteuer hinauslaufen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#49
Hallo Klaus-Dieter....,
Ja, ich will ein Kleingewerbe anmelden. Ich habe einen Freibetrag von 22 Tsd. Darüber muss ich Umsatzsteuer abführen

MfG
....lieben Gruß

Claudia
Antworten Top
#50
@ Klaus-Dieter,
entschuldige bitte, dass ich mal dazwischen grätsche. Ich hab mir die Prozedur zum Füllen der Timline angeschaut und das Schreiben in jede einzelne Zelle umgebaut, da dies bei entsprechend vielen Einträgen die Laufzeit unnötig verlängert.

Es werden die Treffer in einer Variable gesammelt und als Range im Block geschrieben.
Die Berechnung (Anzahl parallelen Betreuungen) werden auch via Array on Block geschrieben.
Damit ist die Laufzeit bis zum Jahr 2068 stark verkürzt.

Dann habe ich einige Variablen (.Match) auf Variant gesetzt. Das verhindert Fehler bei fehlenden Datensätzen. Den Rest weist du selbst.
Code:
Option Explicit

Private Sub Worksheet_Activate()
    Dim lngZeile As Long
    Dim lngZiZeile As Long
    Dim lngStSp As Variant
    Dim lngZiSp As Variant
    Dim lngFarbZeile As Variant
    Dim lngSpalte As Long
    Dim varHund$, varKatze$, arrH(), arrK()
    Rows("4:" & Tabelle1.Range("A4").End(xlDown).Row).Delete
    Cells(2, 2) = "Anzahl"
    Cells(3, 2) = "Anzahl"
    Cells(2, 3) = "Hunde"
    Cells(3, 3) = "Katzen"
    For lngZeile = 5 To Tabelle1.Range("A4").End(xlDown).Row
        lngFarbZeile = Application.Match(Tabelle1.Cells(lngZeile, 3), Tabelle2.Columns(1), 0)
        lngZiZeile = Range("B" & Rows.Count).End(xlUp).Row + 1
        Cells(lngZiZeile, 1) = Tabelle1.Cells(lngZeile, 1) & "-" & Tabelle1.Cells(lngZeile, 3)
        Cells(lngZiZeile, 2) = Tabelle1.Cells(lngZeile, 4)
        Cells(lngZiZeile, 3) = Tabelle1.Cells(lngZeile, 5)
        lngStSp = Application.Match(Tabelle1.Cells(lngZeile, 14), Rows(1), 0)
        lngZiSp = Application.Match(Tabelle1.Cells(lngZeile, 15), Rows(1), 0)
        If Tabelle1.Cells(lngZeile, 13) = "Hund" Then
            If Len(varHund) < 220 Then  ' Es sind max 255 Zeichen möglich
                varHund = varHund & Replace(Cells(lngZiZeile, lngStSp).Address, "$", "") & ":" & Replace(Cells(lngZiZeile, lngZiSp).Address, "$", "") & ","
            Else
                Range(Left(varHund, Len(varHund) - 1)) = "H"
                Range(Left(varHund, Len(varHund) - 1)).HorizontalAlignment = xlCenter
                varHund = ""
            End If
        ElseIf Tabelle1.Cells(lngZeile, 13) = "Katze" Then
            If Len(varKatze) < 220 Then
                varKatze = varKatze & Replace(Cells(lngZiZeile, lngStSp).Address, "$", "") & ":" & Replace(Cells(lngZiZeile, lngZiSp).Address, "$", "") & ","
            Else
                Range(Left(varKatze, Len(varKatze) - 1)) = "K"
                Range(Left(varKatze, Len(varKatze) - 1)).HorizontalAlignment = xlCenter
                varKatze = ""
            End If
        End If
    Next lngZeile
    If varHund <> "" Then
        Range(Left(varHund, Len(varHund) - 1)) = "H"
        Range(Left(varHund, Len(varHund) - 1)).HorizontalAlignment = xlCenter
    End If
    If varKatze <> "" Then
        Range(Left(varKatze, Len(varKatze) - 1)) = "K"
        Range(Left(varKatze, Len(varKatze) - 1)).HorizontalAlignment = xlCenter
    End If
    ReDim arrH(1 To 1, 1 To Cells(1, Columns.Count).End(xlToLeft).Column - 3)
    arrK = arrH
    For lngSpalte = 4 To Cells(1, Columns.Count).End(xlToLeft).Column
        arrH(1, lngSpalte - 3) = Application.WorksheetFunction.CountIf(Range(Cells(4, lngSpalte), Cells(lngZiZeile, lngSpalte)), "H")
        arrK(1, lngSpalte - 3) = Application.WorksheetFunction.CountIf(Range(Cells(4, lngSpalte), Cells(lngZiZeile, lngSpalte)), "K")
    Next lngSpalte
    Cells(2, 4).Resize(1, UBound(arrH, 2)) = arrH
    Cells(3, 4).Resize(1, UBound(arrK, 2)) = arrK
End Sub

Die farbliche Kennzeichnung würde ich mit bedingter Formatierung erschlagen.
Diese kann man ebenfalls in einer kleinen Prozedur, wenn sich im Listobjekt der Tabelle2 am Kundenstamm sich was ändert neu setzen. Dabei kann man die Anzahl der Zeilen aus dem Datenbestand der Listobjekts aus der Tabelle1 auch mit Angleichen.
Auch wenn die bedingte Formatierung u.U. etwas nachläuft, kommt man deutlich schneller an die Ausgabe.

Damit hältst du dir die Laufzeitprobleme so ziemlich vom Hals. 

.xlsm   Hundekalender 2025 (nebst Änderungen) .xlsm (Größe: 414,79 KB / Downloads: 10)

Gruß Uwe
Antworten Top


Gehe zu:


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