Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1804to1808
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Registrierkasse

Registrierkasse
19.01.2021 07:31:20
Udo
Hallo !
Ich habe mir dank eurer Hilfe hier nun eine kleine Registrierkasse gebastelt.
Eigentlich bin ich mit dem Ergebnis sehr zufrieden, aber es gibt natürlich immer kleinigkeiten die man dann verfeinern will.
Da meine persönlichen Excel Kenntnisse vorallem mit VBA nicht so groß sind hoffe ich wieder auf eure Hilfe.
Also Registrierkasse funktioniert, man kann über den Button NEUEN GAST anlegen immer ein Tabellenblatt hinzufügen es benennen usw. passt alles, ich habe dann eine Gesamtübersicht vom täglichen Umsatz passt auch. Die Registrierkarten färben sich Grün wenn bezahlt. Rot wenn die Rechnung noch offen ist.
Wäre es auch möglich das sich ein Tabellenblatt automatisch anlegt, wo man alle Gäste übersichtlich sieht mit dem Betrag und dem Status ob Rechnung noch offen oder nicht. Ganz fein wäre natürlich, wenn man den Gast gleich anklicken könnt um auf sein Tabellenblatt zu springen.
Sind so Spinnereien die ich gerne hätte
mit besten Dank im Vorraus
https://www.herber.de/bbs/user/143098.xlsm
LG Udo

23
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Registrierkasse
19.01.2021 08:12:38
Klaus
Hallo Udo,
kannst du damit etwas anfangen?
Sub AlleGaeste()
Dim ws As Worksheet
Dim z As Long
z = 2
Sheets.Add
Cells.ClearContents
For Each ws In Worksheets
Select Case ws.Name
Case "Gesamt", "Vorlage", ActiveSheet.Name
Case Else
Cells(z, 1).Value = ws.Name
z = z + 1
ActiveSheet.Hyperlinks.Add Anchor:=Cells(z, 1), Address:="", SubAddress:=ws.Name & " _
!A1", TextToDisplay:=ws.Name
End Select
Next ws
Range(Cells(2, 2), Cells(z, 2)).FormulaR1C1 = "=INDIRECT(RC[-1]&""!F31"")"
Range(Cells(2, 3), Cells(z, 3)).FormulaR1C1 = "=INDIRECT(RC[-2]&""!H2"")"
Range("A1").Value = "Name"
Range("B1").Value = "Betrag"
Range("C1").Value = "bezahlt?"
End Sub

Anzeige
AW: Registrierkasse
19.01.2021 08:48:46
Udo
Vielen Dank für deine ANtwort
NUr wo muss ich das einfügen?
LG Udo
AW: Registrierkasse
19.01.2021 09:33:32
Klaus
In ein Modul, und laufen lassen. Erstellt ein neues Sheet (sheets.add) und fügt dort alles ein was du willst.
IM Realbetrieb wirst du sheets.add wahrscheinlich wieder rausnehmen, aber im Ursprungspost war "erstellt ein neues Sheet" gefordert :-) damit du das einfach rauskommentieren kannst, folgt direkt danach das "cells.clearcontents" ... pass blos auf dass du das Makro nicht im falschen Blatt ausführst, sonst ist alles weg ;-)
LG,
Klaus
AW: Registrierkasse
19.01.2021 09:40:02
Udo
Da kommt eine Fehlemeldung "Fehler beim Kompilieren:
Sytntaxfehler
ActiveSheet.Hyperlinks.Add Anchor:=Cells(z, 1), Address:="", SubAddress:=ws.Name & " _
!A1", TextToDisplay:=ws.Name
Diese Zeile ist rot?
LG Udo
Anzeige
AW: Registrierkasse
19.01.2021 10:18:03
peterk
Hallo
Das ist EINE Zeile (die Forumssoftware hat die Zeile umgebrochen!)

Anchor:=Cells(z, 1), Address:="", SubAddress:=ws.Name & "!A1", textToDisplay:=ws.Name

AW: Registrierkasse
19.01.2021 10:24:35
Udo
Ok Danke
Ja funktioniert, vielen Dank.
Ist aber nicht ganz so wie ich mir das vorgestellt habe, wenn ich auf den Gastnamen klicke das ich auf das Tabellenblatt springe kommt"Der Bezug ist ungültig" und am liebsten wäre mir, ich weiß nicht ob das überhaupt möglich ist das sich die Tabelle quasi in Echtzeit aktualisiert
Trotzdem Vielen Dank
LG Udo
AW: Registrierkasse
19.01.2021 11:30:30
Rudi
Hallo,
ActiveSheet.Hyperlinks.Add Anchor:=Cells(z, 1), Address:="", SubAddress:="#'" & ws.Name & "'!A1", TextToDisplay:=ws.Name

das sich die Tabelle quasi in Echtzeit aktualisiert
Dann ruf den Code doch in Blatt_erstellen auf.
Gruß
Rudi
Anzeige
AW: Registrierkasse
19.01.2021 17:17:08
Udo
Danke
LG Udo
AW: Registrierkasse
19.01.2021 17:16:42
Udo
Betsen Dank
Perfekt
LG Udo
AW: Registrierkasse
24.01.2021 19:40:52
Udo
Hallo nochmal
Das ist Perfekt einziges Problem was mir aufgefallen ist, wenn ich den "neuen Gast" z.b abbreche kommt
Laufzeitfehler
Index außerhalb des gültigen Bereichs
'*** Gast in Gästeübersicht einfügen *****
intGastZeile = Sheets("Gast-Übersicht").Cells(Rows.Count, 1).End(xlUp).Row + 1
With Sheets("Gast-Übersicht")
.Cells(intGastZeile, 1).Value = strBlattname
.Cells(intGastZeile, 2).Value = Sheets(strBlattname).Range("F31").Value
.Cells(intGastZeile, 3).Value = Sheets(strBlattname).Range("H2").Value
End With
'*** Ende ***
End Sub
Wie gehört der Code geändert das dies nicht passiert?
Vielen Dank
LG Udo
Anzeige
AW: Registrierkasse
24.01.2021 22:45:27
ralf_b
Hallo Udo,
beim Vorbeischlendern hab ich mir dein Projekt angesehen und ein paar Vereinfachungen für dich.
erstmal das Blatt erstellen
Public Sub Blatt_erstellen()
Dim ws As Worksheet, strBlattname As String, intGastZeile As Integer
Application.ScreenUpdating = False
If vbYes = MsgBox("Neuen Gast anlegen?" & _
Chr(13) & "" & Chr(13) & _
"Achte das die Vorlage immer leer ist!" & _
Chr(13) & "" & Chr(13) & _
"© UdPa", vbYesNo) Then
strBlattname = InputBox("Bitte Gast anlegen erfassen.", "Neues Tabellenblatt")
If strBlattname = vbNullString Then Exit Sub
strBlattname = LegalSheetName(strBlattname)
For Each ws In ThisWorkbook.Worksheets
If ws.Name = strBlattname Then
MsgBox "Das Blatt " & strBlattname & " existiert bereits."
Exit Sub
End If
Next ws
Worksheets("Vorlage").Copy after:=Worksheets(Sheets.Count)
Set ws = Worksheets(Sheets.Count)
With ws
.Unprotect "UdPa040674"
.Name = strBlattname
.Range("H2") = "offen"
.Protect "UdPa040674"
End With
'*** Gast in Gästeübersicht einfügen *****
With Sheets("Gast-Übersicht")
intGastZeile = .Cells(Rows.Count, 1).End(xlUp).Row + 1
.Cells(intGastZeile, 1).Value = ws.Name
.Cells(intGastZeile, 2).Value = ws.Range("F31").Value
.Cells(intGastZeile, 3).Value = ws.Range("H2").Value
End With
'*** Ende ***
End If
Set ws = Nothing
End Sub
und dann dein modul2, das kansnt direkt importiern. habe die app_x und weiss:x auf je eine sub reduziert das dürfte für dich einfacher werden.
https://www.herber.de/bbs/user/143297.txt
Anzeige
AW: Registrierkasse
24.01.2021 23:46:38
Udo
Vielen Dank
Nur leider jetzt übernimmt es nicht den namen den ich eingebe sondern immer eine kopie der Vorlage
kommt Vorlage(1), Vorlage(2) usw. nicht so wie vorher der Name den ich den GAst vergebe ansonsten wäre es so super
Danke LG
AW: Registrierkasse
25.01.2021 06:53:30
ralf_b
ja das hatte ich auch festgestellt. Das neue Blatt wurde unsichtbar (ausgeblendet) erstellt. Durch maunelles Einblenden hat die Erstellung dann wieder hingehauen. Ich habe leider keine Erklärung warum das so ist. ICh habe es gerade nochmal getestet und es läuft wie gedacht.
gruß
rb
AW: Registrierkasse
25.01.2021 10:00:23
Udo
Danke für deine Mühe
Nur jetzt zählt es wieder bei Tabellenblatt "Gesamt" nicht mehr hmm
LG Udo
Anzeige
AW: Registrierkasse
25.01.2021 16:07:54
ralf_b
oh, und wie wird "Gesamt" gefüllt? Weist du das überhaupt? Im Code jedenfalls nicht. Also hat der Code keine Schuld. Prüfe die hinterlegte Formel in Gesamt!spalte D
Mir ist aufgefallen das die Vorlage irrtümlich auch als Eingabe genutzt werden kann, da sie ja so einladend präsent ist zu Beginn. Ich schlage vor diese Tabelle auszublenden und nur als Kopiervorlage zu nutzen. Und in den Gasttabellen wird doch sicherlich kein Button "Neuer Gast" benötigt, oder? Sowie die Rechnungssumme nicht ganz nach unten wohin man erstmal hinscrollen muß.
gruß
rb
AW: Registrierkasse
25.01.2021 16:30:56
Udo
Danke für deine Mühe
Warum auch immer hat es mir das Tabellenblatt "Tabelle31" darum funzt es nicht.
LG Udo
Anzeige
AW: Registrierkasse
25.01.2021 16:37:02
Udo
Der Button neuer Gast ist gut das er auf jeder Seite ist kann man immer direkt einen neuen Gast eintragen und muss nicht extra wieder auf ein bestimmtes Tabellenblatt, ja den Rechnungsbetrag kann i höher legen da wirst schon recht haben. Ich bin eigentlich sehr zufrieden mit dem Ergebnis.
Es muss trotzdem am neuen Code liegen sobald ich zurücksetze is wieder der neue gast ausgeblendet, einmal einblenden dann gehts wieder aber die Tabelle 31 ist futsch hmmm
LG Udo
AW: Registrierkasse
25.01.2021 16:38:22
ralf_b
dann schick halt mal die datei .
AW: Registrierkasse
25.01.2021 19:41:30
Udo
Vielen Dank für eure Hilfe und Mühe
Ich habs jetzt selbst nach meinen Wünschen zusammengebracht.
LG Udo
AW: Registrierkasse
25.01.2021 19:53:46
ralf_b
schön, hast du meine Antwortmail gelesen?
gruß
rb
AW: Registrierkasse
25.01.2021 20:46:51
Udo
Danke habs gerade gesehen
Perfekt auch
Vielen Dank
LG

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige