Clever-Excel-Forum

Normale Version: User Form bitte um dringende Hilfe
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,
ich habe eine User Form der mir die Daten in das Tabellenblatt Grundliste BA speichert.

Jetzt möchte ich, das wenn ein Kreuz bei G25,G21,G20,G37 gemacht wird, das es dann auch in die Tabellenblätter eingetragen wird.
Es kann sein das ein kreuz oder mehrere gesetzt werden.
Es soll dann nur A bis E eingetragen werden. 

Z.b. Name : Hans
bekommt die G21 und G37
dann muss es in die Grundliste getragen werden ( das läuft alles gut ) und JETZT zusätzlich in das Tabellenblatt G21 und G37 untendrunter eingetragen werden. Aber jeweils nur Personalnummer, Name ,Abteilung ,Text, Geburtsdatum.

Wäre sowas möglich ?

Denn momentan machen wir alles Manuell und es wird zu viel vergessen.

Danke
HAllo,

ich würde da nur mit dem Blatt Grundliste arbeiten. Anstelle der Spalten H bis K würde ich nur eine Spalte verwenden, in der die Begriffe im Klartext stehen. Das würde einiges erleichtern.
Hallo,

der Code gehört ins Codemodul vom Blatt "Grundliste BA"
-Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren


Code:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim loLetzte As Long

If Target.Column >= 8 And Target.Column <= 11 Then
   If Target.Count = 1 Then
       If Not Target = "" Then
           If UCase(Target) = "X" Then
               With Worksheets(Left(Cells(2, Target.Column), 3))
                   loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Offset(1).Row
                   Range(Cells(Target.Row, 1), Cells(Target.Row, 5)).Copy .Cells(loLetzte, 1)
               End With
           End If
       End If
   End If
End If
End Sub
Gruß Werner
Hallo Werner,

was mache ich falsch ?

Danke Dir
(15.09.2018, 11:50)Klaus-Dieter schrieb: [ -> ]HAllo,

ich würde da nur mit dem Blatt Grundliste arbeiten. Anstelle der Spalten H bis K würde ich nur eine Spalte verwenden, in der die Begriffe im Klartext stehen. Das würde einiges erleichtern.

Hallo,

es kommen immer wieder neue dazu usw... und wir brauchen diese Tabellen für die Betriebsärztin und deswegen müssen wir es so machen.

Danke dir
Hallo,

1. da fehlt ein End Sub
2. Werner sprach

(15.09.2018, 12:15)Werner.M schrieb: [ -> ]der Code gehört ins Codemodul vom Blatt "Grundliste BA"

von den anderen Tabellenblättern hat er nichts gesagt Angel
Hallo an Beide,

besten Dank für alles Smile
Hallo nochmal zusammen,

jetzt habe ich die ganze Nacht durchgemacht und schaffe diese Aufgabe nicht. Sad

Wenn man im User Form ein Kreuz bei Schulung 1 macht, dann sollen bestimmt Daten in einen anderen Datei gespeichert werden.

  'Wenn ein klick im User Form bei Schulungen 1-7 ( auch mehrer möglich) erfolgt, dann sollen diese Daten in den Pfad speichern.
  'Klick bei:
'Schulungsliste 1  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungP.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 2  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungZ.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 3  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungL.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 4  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungS.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 5  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungW.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 6  wäre im Pfad P:\Betrie\Schulungs\2018\SchulungA?L.xlsm -> Tabellenblatt MA Grundliste
'Schulungsliste 1 bis 6 müsste
'Spalte A der Name -> Txt_Name
'Spalte B der Bereich -> Listbox2
'Spalte C die Abteilungstext ->Listbox1
'Spalte D die Information -> Txt_Info
'gespeichert werden

'Schulungsliste 7 wäre im Pfad P:\Betrie\Test\Lager\Stammdaten.xlsm -> Tabellenblatt Grunddaten Mitarbeiter
'Spalte A der Name -> Txt_Name
'Spalte B der Personalnummer -> Txt_Personalnummer
'Spalte C die Information ->Text_Info
'gespeichert werden

Ich schaffe das einfach nicht, mein wissen ist dazu viel zu wenig. Könnt ihr mir dabei nochmal helfen ?
Danke
Hallo,

gleiches auch hier:

http://www.herber.de/forum/messages/1645750.html

Gruß Werner
Hallo,

mal ungetestet

Code:
Private Sub CommandButton1_Click()
   Dim lngC As Long, lngLastRow As Long
   Dim vntDatei As Variant
   Dim wkbDatei As Workbook
   vntDatei = Array("P", "Z", "L", "S", "W", "A?L")
  
   For lngC = 1 To 7
      If Controls("Schulung" & lngC).Value Then
         Select Case lngC
            Case 1 To 6
               Set wkbDatei = Workbook.Open("P:\Betrie\Schulungs\2018\Schulung" & vntDatei(lngC - 1) & ".xlsm")
               With wkbDatei.Worksheets("MA Grundliste")
                  lngLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
                  .Cells(lngLastRow, 1) = Txt_Name
                  .Cells(lngLastRow, 2) = ListBox2.Value
                  .Cells(lngLastRow, 3) = ListBox1.Value
                  .Cells(lngLastRow, 4) = Txt_Info
               End With
            Case Else
               Set wkbDatei = Workbook.Open("P:\Betrie\Test\Lager\Stammdaten.xlsm")
               With wkbDatei.Worksheets("MA Grundliste")
                  lngLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
                  .Cells(lngLastRow, 1) = Txt_Name
                  .Cells(lngLastRow, 2) = Txt_Personalnummer
                  .Cells(lngLastRow, 3) = Txt_Info
               End With
         End Select
      End If
      wkbDatei.Close True
   Next lngC
End Sub
Seiten: 1 2