Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1740to1744
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

VBA Code Wert in anderem Blatt setzen

VBA Code Wert in anderem Blatt setzen
15.02.2020 09:00:33
Kurte
Hallo Liebe Gemeinde,
Hab mal wieder ein Problem welches im Code beschrieben ist.
Kann jemand helfen?
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lngRow As Long
If Not Intersect(Target, Range("P4:P250")) Is Nothing Then
Cancel = True
Target = Now
Select Case Target.Column
Case 16
Cells(Target.Row, 1) = 8 'Dieser Wert soll dann auch ins Blatt "Projekte"  _
geschrieben werden
'Hier soll er den Wert aus Zelle F der gewählten Reihe im Blatt "Projekte" suchen   _
_
und dort auch den Wert  in Zelle A schreiben
If MsgBox("Ist dieser Arbeitsschritt für dieses Projekt wirklich fertig?", _
vbQuestion Or vbOKCancel, "Abfrage") = vbOK Then
Target.EntireRow.Delete
End If
Case Else
End Select
End If
End Sub

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Code Wert in anderem Blatt setzen
15.02.2020 09:14:44
Hajo_Zi

Dim Rafound As Range
Dim Target1 As String
With Worksheets("Projekte")
Set Rafound = .Columns(6).find(Target, .Range("F" & Rows.Count), xlFormulas, _
xlWhole, , xlNext)
If Not Rafound Is Nothing Then
Rafound.Offset(0, -5) = Target1
End If
Set Rafound = Nothing
End With

AW: VBA Code Wert in anderem Blatt setzen
15.02.2020 09:31:31
Stefan
Hallo Hajo,
Erst mal vielen Dank.....
Habe den Code wie folgt eingebaut. Eine Fehlermeldung kam nicht aber er hat den Wert leider nicht geschrieben.
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lngRow As Long
If Not Intersect(Target, Range("P4:P250")) Is Nothing Then
Cancel = True
Target = Now
Select Case Target.Column
Case 16
Cells(Target.Row, 1) = 8
Dim Rafound As Range
Dim Target1 As String
With Worksheets("Projekte")
Set Rafound = .Columns(6).Find(Target, .Range("F" & Rows.Count), xlFormulas, _
xlWhole, , xlNext)
If Not Rafound Is Nothing Then
Rafound.Offset(0, -5) = Target1
End If
Set Rafound = Nothing
End With
If MsgBox("Ist dieser Arbeitsschritt für dieses Projekt wirklich fertig?", _
vbQuestion Or vbOKCancel, "Abfrage") = vbOK Then
Target.EntireRow.Delete
End If
Case Else
End Select
End If
End Sub

Anzeige
AW: VBA Code Wert in anderem Blatt setzen
15.02.2020 10:10:14
Hajo_Zi
in meiner geht es.
Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.Ich baue keine Datei nach.
Sollte die Datei verlinkt werden?
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten
http://www.ms-office-forum.de/forum/showthread.php?t=322895
änderrn.
Das ist nur meine Meinung zu dem Thema.
Gruß Hajo
Anzeige
AW: VBA Code Wert in anderem Blatt setzen
15.02.2020 11:40:16
Nepumuk
Hallo Stefan,
die Variable "Target1" enthält keinen Wert.
Gruß
Nepumuk
AW: VBA Code Wert in anderem Blatt setzen
16.02.2020 07:56:54
Stefan
Hallo Nepomuk,
Mhhh. Ich weis leider nicht was du meinst bzw. wozu dieser Wert überhaupt benötigt wird.
Also.... diese Code steht im Blatt X Ich möchte bei doppelklick diese Zellen löschen und vorher soll er den Wert in Zelle 6 nehmen und ihn im Blatt Y suchen. Wenn gefunden soll er in dieser Zeile in Zelle 1 eine 8 eintragen.
AW: VBA Code Wert in anderem Blatt setzen
16.02.2020 09:09:25
Nepumuk
Hallo Stefan,
na dann, einfach so:
Rafound.Offset(0, -5) = 8
Gruß
Nepumuk
AW: VBA Code Wert in anderem Blatt setzen
17.02.2020 05:39:49
Stefan
Hallo Nepomuk,
Kann machen was ich will. Der code läuft durch aber es passiert nichts in Blatt "Projekte"
Rafound ist doch der Wert den er suchen soll, oder? Wieso ist das eine Range. Ich habe dort eine Zahlen/Buchstabenkombination stehen.
Irgendwo steckt da ein fehler drin.
Anzeige
AW: VBA Code Wert in anderem Blatt setzen
17.02.2020 09:16:23
Werner
Hallo,
da fehlen auch noch Infos.
Was klar ist:
Doppelklick in Tabelle X in Spalte P
Wert aus Spalte F der doppelt geklickten Zeile in Blatt Y suchen
Frage: Wo soll im Blatt Y gesucht werden? Im ganzen Blatt? In einer bestimmten Spalte? Wenn ja in welcher?
Gruß Werner
AW: VBA Code Wert in anderem Blatt setzen
17.02.2020 09:28:49
Nepumuk
Hallo Stefan,
ich gehe jetzt mal davon aus das der Wert aus Spalte F auch in Spalte F de Worksheets "Projekte" gesucht werden soll. Wenn es eine andere Spalte ist, dann musst du diese in dieser Zeile ändern:
Set objCell = Worksheets("Projekte").Columns(6)...
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lngRow As Long
Dim objCell As Range
If Not Intersect(Target, Range("P4:P250")) Is Nothing Then
Cancel = True
Target = Now
Cells(Target.Row, 1).Value = 8
Set objCell = Worksheets("Projekte").Columns(6).Find(What:=Cells(Target.Row, 6).Value,  _
_
LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=False)
If Not objCell Is Nothing Then
objCell.Offset(0, -5).Value = 8
Set objCell = Nothing
Else
MsgBox "Nix gefunden"
End If
If MsgBox("Ist dieser Arbeitsschritt für dieses Projekt wirklich fertig?", _
vbQuestion Or vbOKCancel, "Abfrage") = vbOK Then
Target.EntireRow.Delete
End If
End If
End Sub

Gruß
Nepumuk
Anzeige
AW: VBA Code Wert in anderem Blatt setzen
17.02.2020 09:41:12
Werner
Hallo Stefan,
da ich jetzt auch schon einen Code geschrieben habe (prinzipiell der gleiche wie Nepumuk) poste ich ihn auch noch. Ich bin auch wie Nepumuk davon ausgegangen, dass im Blatt "Projekte" in Spalte F gesucht werden soll.
Unterschied zum Code von Nepumuk ist der, dass die doppelt angeklickte Zeile nur dann gelöscht wird, wenn die Suche in Spalte F des Blattes "Projekte" auch erfolgreich war.
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim raFund As Range
If Not Intersect(Target, Range("P4:P250")) Is Nothing Then
Cancel = True
Target = Now
Target.Offset(, -15) = 8
Set raFund = Worksheets("Projekte").Columns("F").Find(what:=Target.Offset(, -10), _
LookIn:=xlValues, lookat:=xlWhole)
If Not raFund Is Nothing Then
raFund.Offset(, -5) = 8
If MsgBox("Ist dieser Arbeitsschritt für dieses Projekt wirklich fertig?", _
vbQuestion Or vbOKCancel, "Abfrage") = vbOK Then
Target.EntireRow.Delete
End If
Else
MsgBox "Fehler: Das Projekt " & Target.Offset(, -10) & " ist in Projekte nicht  _
vorhanden."
End If
End If
Set raFund = Nothing
End Sub
Gruß Werner
Anzeige
AW: VBA Code Wert in anderem Blatt setzen
17.02.2020 15:53:55
Stefan
Hallo Werner,
Hallo Nepumuk,
Super.... Vielen vielen Dank jetzt macht es genau das was es soll......
Ihr zwei seit die Besten.........
Dickes Lob an euch Beide.
Gerne u. Danke für die Rückmeldung. o.w.T.
17.02.2020 16:02:35
Werner
AW: Gerne u. Danke für die Rückmeldung. o.w.T.
18.02.2020 05:37:46
Stefan
Hallo Werner,
Hallo Nepumuk,
Hätte da noch ein gravierendes Problem in meiner Excel.
Mit folgendem Code kopiere ich diverse Zeilen durch die einzelnen Blätter.
Mein Problem ist sobald ich in den Blättern ein Filter gesetzt habe( was unbedingt von Nöten wäre) findet er beim suchen der nächsten freien Zeile diese nicht und bricht den Kopiervorgang ab. Habt ihr zwei Experten dazu eine Idee?
Bin mir sicher das ihr dazu auch eine Lösung habt, das wäre supi.......
Hier der Code
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lngRow As Long
If Not Intersect(Target, Range("AG4:AK250")) Is Nothing Then
Cancel = True
Target = Date
Select Case Target.Column
Case 33
Cells(Target.Row, 1) = 2
Case 34
Cells(Target.Row, 1) = 3
Case 35
Cells(Target.Row, 1) = 4
Case 37
If MsgBox("Willst du wirklich dieses Projekt an den Einkauf übergeben?", _
vbQuestion Or vbOKCancel, "Abfrage") = vbOK Then
Cells(Target.Row, 1) = 5
With Worksheets("IV")
lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
Target.EntireRow.Copy .Rows(lngRow)
Target.EntireRow.Delete
End With
End If
Case Else
End Select
End If
End Sub

Anzeige
Kopieren funktioniert nicht
18.02.2020 08:07:19
Nepumuk
Hallo Stefan,
wie äußert sich das? Ist die Tabelle geschützt?
Gruß
Nepumuk
AW: Kopieren funktioniert nicht
18.02.2020 17:29:44
Stefan
Hallo Nepumuk,
Nein geschützt is sie nicht.
Also.....ich bin was die Funktionalität angeht jetzt fertig mit meinem Produktionsplan.
Leider habe ich das Gruppieren und Filtern von Zeilen und Spalten jetzt immer ignoriert oder aus den Augen verloren.
Gerade eben wollte ich nun mal einen kompletten Durchlauf eines Projektes machen und habe mal die Filter eingestellt und auch mit Gruppieren einzelne Spalten ausgeblendet. Das Ergebnis war gerade niederschmetternd. Ohne Filter und Gruppierungen funzt alles wie es soll. Leider kann ich den kompletten Plan hier nicht einstellen, da ohne Daten(Projekte) die Datei etwas über 2MB hat. Und selbst wenn ich es schaffen würde müsste ich dir die Datei erst mal besser telefonisch erläutern. Sonst wird’s schwierig. Weil das hier zu tippen wäre........sorry....Scheiße.....;-) Hättest du Lust, oder wärst bereit mir da weiter zu helfen?
Gruß Stefan
Anzeige
AW: Kopieren funktioniert nicht
18.02.2020 19:08:54
Nepumuk
Hallo Stefan,
kann ich nicht nachvollziehen. Ich kann eine ganze Zeile per VBA einfügen auch wenn die Tabelle gefiltert und gruppiert ist.
Gruß
Nepumuk
AW: Kopieren funktioniert nicht
18.02.2020 21:13:46
Stefan
Hallo Nepumuk,
Ich kopiere ja nicht die ganze Zeile sondern nur immer die Zellen A-AO mit folgenden Code.
Target.Offset(, -35).Resize(, 41).Copy .Rows(lngRow)
Grunde dafür ist ein „Gantt Diagramm“ ab Spalte AP der mit Desinteresse Formatierung die Produktionszeiten darstellt.
Diese Formatierungen will ich beim kopieren nicht mit nehmen. Deswegen nur die Kopie der einzelnen Zellen.
Vielleicht gibt es eine Bessere Lösung für den kopier Befehl. fakt ist ich hatte heute gefiltert und gruppiert.
Und er hat dann gefragt ob er die ganze Zeile löschen soll und hat nur die sichtbaren Zellen kopiert. Auch war anschliessend alles mega langsam. Irgendwas hat ihm nicht gefallen. Wie schon gesagt ist es sehr schwierig dir jetzt hier alle Einzelheiten zu schreiben. Ich war heute auch erst mal mega genervt und habe erst mal nicht weiter nach dem Fehler gesucht.
Mal schauen was ich morgen noch raus bekomme. aber vielleicht hast du ja schon ne Idee für eine andere Anweisung zum kopieren.
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige