Thema Datum  Von Nutzer Rating
Antwort
Rot Optimierung vorhandenen Codes
21.02.2019 09:50:29 Patrick
NotSolved
06.03.2019 22:05:59 Ben
NotSolved
07.03.2019 06:47:28 Gast52952
NotSolved
08.03.2019 21:49:25 Ben
NotSolved

Ansicht des Beitrags:
Von:
Patrick
Datum:
21.02.2019 09:50:29
Views:
95
Rating: Antwort:
  Ja
Thema:
Optimierung vorhandenen Codes

Hi,

ich habe folgenden Code:

 Private Sub Worksheet_Change(ByVal Target As Range)
 Dim intLZ As Integer
 Dim wsq As Worksheet
 Dim wsz As Worksheet
 Dim start As Integer
 If Target.Column <> 1 Then Exit Sub
 If Target.Count > 1 Then Exit Sub
 Set wsz = Sheets("Prüfplan")
 Set wsq = Sheets("Sonderprüfbedingungen")
 intLZ = wsz.Cells(Rows.Count, 8).End(xlUp).Row + 1
 Application.EnableEvents = False
 If Target.Value = "x" Then
     With wsz
         .Cells(intLZ, 8).Value = Target.Offset(, 1).Value
         .Cells(intLZ, 9).Value = Target.Offset(, 2).Value
         .Cells(intLZ, 5).Value = Target.Offset(, 4).Value
     End With
 Else
     start = wsz.Range("H20:H" & intLZ).Find(what:=Target.Offset(, 1)).Row
     With wsz
         .Cells(treffer, 8).Value = ""
         .Cells(treffer, 9).Value = ""
         .Cells(treffer, 5).Value = ""
     End With
 End If
 Application.EnableEvents = True
 Set wsz = Nothing
 Set wsq = Nothing
 End Sub

Nun möchte ich erreichen, dass folgendes passiert:

- Man kann nur 1 "x" setzen ain gleicher Zelle (aktuell wird bei versehentlichem Klicken ein Mehrfacheintrag erstellt mit gleichem Inhalt)
- Man kann auch nur einmal den Zelleninhalt löschen ("x")
- Es soll möglich sein, mehrere mit "x" markierte Zellen gleichzeitig zu löschen, wobei dann auch die entsprechenden Einträge von "Prüfplan" gelöscht werden sollen
- Kann man realisieren, dass die Zeilen, sollte das x wieder entfernt werden, sich dann komplett löschen, wenn in A-D und G und J (aktuell ab Zeile 20) auch keine Einträge sind? (Prüfplan)
Es sollen einfach keine leeren Zeilen zwischen den Einträgen sein. Es muss aber sichergestellt sein, dass keine Zeilen gelöscht werden, wenn in Zellen schon Einträge sind, die nicht durch den Code befüllt wurden (Prüfplan)
- Doppeleinträge sollen nicht möglich sein (gleicher Inhalt in unterschiedlichen Zeilen)
-Wenn ich in "Sonderprüfbedingungen" nachträglich Bezeichnungen ändere, soll das in den bereits kopierten Zellen automatisch mitkorrigiert werden.
Geht das? Muss ja geprüft werden, dass wirklich die richtigen Zeilen geändert werden.
 
Bei:
intLZ = .Cells(Rows.Count, 8).End(xlUp).Row + 1

möglich ab Zeile 20 auch von oben nach leerer Zelle suchen zu lassen und von unten?

Ein paar Code-Schnipsel würden vielleicht reichen, damit ich das auch verstehen lerne...

Das würde mir sehr weiterhelfen. Danke.

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst genau und ausführlich
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
  • Bitte markieren Sie Ihre Anfrage als erledigt wenn Ihnen geholfen wurde
Thema: Name: Email:

 
 

Thema Datum  Von Nutzer Rating
Antwort
Rot Optimierung vorhandenen Codes
21.02.2019 09:50:29 Patrick
NotSolved
06.03.2019 22:05:59 Ben
NotSolved
07.03.2019 06:47:28 Gast52952
NotSolved
08.03.2019 21:49:25 Ben
NotSolved