Privot Tabelle mit Eingabemaske und Formatierte Tablle

  • Excel

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Neo152.

    Privot Tabelle mit Eingabemaske und Formatierte Tablle

    Hallo zusammen ich versuche für meine Arbeit ein Telefonbuch zu Programmieren, dieses soll intern benutzt werden und im Gruppenverlauf abgelegt werden.
    Ich habe 3 Arbeitsblätter
    Blatt 1 Ausgabe als Pivot Tabelle (Telefonbuch)
    Blatt 2 Kontaktdaten (Wird ausgeblendet und gesperrt es sollen nur Daten eingetragen werden, nur ich soll die Hinterlegten Daten ändern können erst einmal)
    Blatt 3 Zuständigkeit (für die Combo Boxen, werden auch ausgeblendet)

    Wenn ich die Daten nun in die Eingabemaske eintrage fügt er die Daten nicht in die Formatierte Tabelle ein sondern am ende des Tabellenblattes.

    Wie bekomme ich es nun hin das die Daten aus dem Eingabefenster in die Formatierte Tabelle eingetragen werde ?

    Ich danke schonmal für die Hilfe :thumbup:



    Visual Basic-Quellcode

    1. Private Sub UserForm_Initialize()
    2. 'Comboboxen Zuständigkeit Initialisieren
    3. Dim rngZuständigkeit As Range
    4. With Me.cboZuständigkeit
    5. .List = Range("Zuständigkeit").Value
    6. End With
    7. 'Comboboxen Firma Initialisieren
    8. Dim rngFirma As Range
    9. With Me.cboStadtFirma
    10. .List = Range("Firma").Value
    11. End With
    12. 'Comboboxen Zustimmung Initialisieren
    13. Dim rngZustimmung As Range
    14. With Me.cboZustimmung
    15. .List = Range("Zustimmung").Value
    16. End With
    17. End Sub
    18. Private Sub cboStadtFirma_Change()
    19. 'In Firma wird der Wert aus der Combobox als Variable Hinterlegt
    20. Firma = cboStadtFirma.Value
    21. End Sub
    22. Private Sub cboZuständigkeit_Change()
    23. 'In Zuständigkeut wird der Wert aus der Combobox Variable Hinterlegt
    24. Zuständigkeit = cboZuständigkeit.Value
    25. End Sub
    26. Private Sub cboZustimmung_Change()
    27. 'In Zustimmung wird der Wert aus der Combobox Variable Hinterlegt
    28. Zustimmung = cboZustimmung.Value
    29. End Sub
    30. Private Sub txtTel_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    31. 'Im Mobilfeld sind nur Zahlen erlaubt
    32. Select Case KeyAscii
    33. Case 48 To 57
    34. Case Else: KeyAscii = 0
    35. End Select
    36. End Sub
    37. Private Sub txtMobil_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    38. 'Im Mobilfeld sind nur Zahlen erlaubt
    39. Select Case KeyAscii
    40. Case 48 To 57
    41. Case Else: KeyAscii = 0
    42. End Select
    43. End Sub
    44. Private Sub cmdEinfügen_Click()
    45. 'Fügt die eigetragenen Werte ins Tabellenblatt und Schließt das Formular'
    46. intErsteLeereZeile = Sheets("Daten").Cells(Rows.Count, 1).End(xlUp).Row + 1
    47. 'Sucht die erste Leere Zeile
    48. Sheets("Daten").Cells(intErsteLeereZeile, 1).Value = txtAdresse.Value
    49. Sheets("Daten").Cells(intErsteLeereZeile, 2).Value = cboZuständigkeit.Value
    50. Sheets("Daten").Cells(intErsteLeereZeile, 3).Value = cboStadtFirma.Value
    51. Sheets("Daten").Cells(intErsteLeereZeile, 4).Value = txtName.Value
    52. Sheets("Daten").Cells(intErsteLeereZeile, 5).Value = txtTel.Value
    53. Sheets("Daten").Cells(intErsteLeereZeile, 6).Value = txtMobil.Value
    54. Sheets("Daten").Cells(intErsteLeereZeile, 7).Value = txtEmail.Value
    55. Sheets("Daten").Cells(intErsteLeereZeile, 8).Value = txtAdresse.Value
    56. Sheets("Daten").Cells(intErsteLeereZeile, 8).Value = txtAdresse.Value
    57. Sheets("Daten").Cells(intErsteLeereZeile, 10).Value = txtCC.Value
    58. Sheets("Daten").Cells(intErsteLeereZeile, 11).Value = txtInfo.Value
    59. Sheets("Daten").Cells(intErsteLeereZeile, 12).Value = cboZustimmung.Value
    60. 'Privottablle Aktuallisieren
    61. Dim wS As Worksheet
    62. Dim pt As PivotTable
    63. For Each wS In ActiveWorkbook.Worksheets
    64. For Each pt In wS.PivotTables
    65. pt.RefreshTable
    66. Next pt
    67. Next wS
    68. Unload frmKontakt
    69. End Sub
    70. Private Sub cmdAbbrechen_Click()
    71. 'Schließt das Formular'
    72. Unload frmKontakt
    73. End Sub

    cry.baby schrieb:

    Bist Du sicher, dass die Tabelle auch als solche formatiert ist? Weil dann erweitert Excel die Tabelle eigentlich automatisch.


    Moin die Tabelle war formatiert, ich habe es jetzt so gelöst, das ich ihr über den Namensmanager ein Namen zugewiesen, damit lief es.

    Unten habe ich den neuen Quellcode mal eingefügt, dazu hätte ich noch eine frage:

    Private Sub cboStadtFirma_Change()

    'In Firma wird der Wert aus der Combobox als Variable Hinterlegt

    Firma = cboStadtFirma.Value

    End Sub

    Private Sub cboZuständigkeit_Change()

    'In Zuständigkeut wird der Wert aus der Combobox Variable Hinterlegt

    Zuständigkeit = cboZuständigkeit.Value

    End Sub

    Muss ich das machen oder kann ich das weglassen, ich war noch nie so gut in Programmieren zudem ist es jetzt auch eine weile her.


    Jetzt versuche ich grade eine MsgBox zu erstellen das die Textfelder ausgefüllt werden müssen, erst dann werden die Daten übernommen.
    Muss ich das mit einer If schleife machen ?



    z.B If txtAdresse gefüllt übernimm die daten

    else txtAdresse nicht gefüllt MsgBox (Adresse muss ausgefüllt sein)

    Visual Basic-Quellcode

    1. Private Sub UserForm_Initialize()
    2. 'Comboboxen Zuständigkeit Initialisieren
    3. Dim rngZuständigkeit As Range
    4. With Me.cboZuständigkeit
    5. .List = Range("Zuständigkeit").Value
    6. End With
    7. 'Comboboxen Firma Initialisieren
    8. Dim rngFirma As Range
    9. With Me.cboStadtFirma
    10. .List = Range("Firma").Value
    11. End With
    12. 'Comboboxen Zustimmung Initialisieren
    13. Dim rngZustimmung As Range
    14. With Me.cboZustimmung
    15. .List = Range("Zustimmung").Value
    16. End With
    17. End Sub
    18. Private Sub cboStadtFirma_Change()
    19. 'In Firma wird der Wert aus der Combobox als Variable Hinterlegt
    20. Firma = cboStadtFirma.Value
    21. End Sub
    22. Private Sub cboZuständigkeit_Change()
    23. 'In Zuständigkeut wird der Wert aus der Combobox Variable Hinterlegt
    24. Zuständigkeit = cboZuständigkeit.Value
    25. End Sub
    26. Private Sub cboZustimmung_Change()
    27. 'In Zustimmung wird der Wert aus der Combobox Variable Hinterlegt
    28. Zustimmung = cboZustimmung.Value
    29. End Sub
    30. Private Sub txtTel_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    31. 'Im Mobilfeld sind nur Zahlen erlaubt
    32. Select Case KeyAscii
    33. Case 48 To 57
    34. Case Else: KeyAscii = 0
    35. End Select
    36. End Sub
    37. Private Sub txtMobil_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    38. 'Im Mobilfeld sind nur Zahlen erlaubt
    39. Select Case KeyAscii
    40. Case 48 To 57
    41. Case Else: KeyAscii = 0
    42. End Select
    43. End Sub
    44. Private Sub cmdEinfügen_Click()
    45. 'Fügt die eigetragenen Werte ins Tabellenblatt und Schließt das Formular'
    46. intErsteLeereZeile = Range("Daten").Cells(Rows.Count, 1).End(xlUp).Row + 1
    47. 'Sucht die erste Leere Zeile
    48. Range("Daten").Cells(intErsteLeereZeile, 1).Value = txtAdresse.Value
    49. Range("Daten").Cells(intErsteLeereZeile, 2).Value = cboZuständigkeit.Value
    50. Range("Daten").Cells(intErsteLeereZeile, 3).Value = obFirma.Value Or obStadt.Value
    51. Range("Daten").Cells(intErsteLeereZeile, 4).Value = txtName.Value
    52. Range("Daten").Cells(intErsteLeereZeile, 5).Value = txtTel.Value
    53. Range("Daten").Cells(intErsteLeereZeile, 6).Value = txtMobil.Value
    54. Range("Daten").Cells(intErsteLeereZeile, 7).Value = txtEmail.Value
    55. Range("Daten").Cells(intErsteLeereZeile, 8).Value = txtAdresse.Value
    56. Range("Daten").Cells(intErsteLeereZeile, 8).Value = txtAdresse.Value
    57. Range("Daten").Cells(intErsteLeereZeile, 10).Value = txtCC.Value
    58. Range("Daten").Cells(intErsteLeereZeile, 11).Value = txtInfo.Value
    59. Range("Daten").Cells(intErsteLeereZeile, 12).Value = cboZustimmung.Value
    60. 'Optionsbottons Werte zuweisen die in die Spalte Firma oder Stadt geschrieben werden
    61. With frmKontakt
    62. Dim last As Integer
    63. If obStadt.Value = True Then Range("Daten").Cells(intErsteLeereZeile, 3).Value = "Stadt"
    64. If obFirma.Value = True Then Range("Daten").Cells(intErsteLeereZeile, 3).Value = "Firma"
    65. End With
    66. 'Privottablle Aktuallisieren
    67. Dim wS As Worksheet
    68. Dim pt As PivotTable
    69. For Each wS In ActiveWorkbook.Worksheets
    70. For Each pt In wS.PivotTables
    71. pt.RefreshTable
    72. Next pt
    73. Next wS
    74. Unload frmKontakt
    75. End Sub
    76. Private Sub cmdAbbrechen_Click()
    77. 'Schließt das Formular'
    78. Unload frmKontakt
    79. End Sub

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Neo152“ ()