specialuser
Goto Top

VBA Programmierung

Hallo zusammen,

der Wert aus Zelle L30 und N30 soll ins wb2 kopiert werden funktionier so weit auch ganz gut außer bei der Zelle N30 und N38 in diesen beiden Zellen ist eine Formel hinterlegt deswegen überträgt es beim kopieren nur ein #NV, daher soll hier nur der Wert kopiert werden. Ich glaube es funktioniert mit einer Value funktion weis aber nicht genau weis jemand wo ich das einfügen muss das es funktioniert.

Private Sub öffneVersandübersicht_Click()
Dim wb2 As Workbook
Set wb2 = Workbooks.Open("Datei xyz")
ThisWorkbook.Activate

With Sheets(1)

.Range("K38").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Offset(1)
.Range("L24").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "D").End(xlUp).Offset(1)
.Range("L30").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "E").End(xlUp).Offset(1)
.Range("N30").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "F").End(xlUp).Offset(1)
.Range("K38").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "G").End(xlUp).Offset(1)
End With
End Sub

Gruß

Content-ID: 346242

Url: https://administrator.de/contentid/346242

Ausgedruckt am: 08.11.2024 um 21:11 Uhr

emeriks
emeriks 14.08.2017 aktualisiert um 10:42:19 Uhr
Goto Top
Hi,
bitte Code-Tags benutzen!

Ich glaube, so müsste es funktionieren.
Sheets(1).Range("K38").Copy   
wb2.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues  
....

E.
specialuser
specialuser 14.08.2017 aktualisiert um 11:09:54 Uhr
Goto Top
Hallo Emeriks,

danke für deine Antwort aber wenn ich das so versuche kommt Fehler beim Kompilieren: Syntaxfehler.

Private Sub öffneVersandübersicht_Click()
    Dim wb2 As Workbook
    Set wb2 = Workbooks.Open("datei xyz")  
    ThisWorkbook.Activate
    
    With Sheets(1)
           
            .Range("K38").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Offset(1)  
            .Range("L24").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "D").End(xlUp).Offset(1)  
            .Range("L30").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "E").End(xlUp).Offset(1)  
            sheets(1).Range("N30").Copy wb2.Sheets(1).Cells(Rows.Count, "F").End(xlUp).Offset(1).PasteSpecial xlPasteValue  
            .Range("K38").Copy Destination:=wb2.Sheets(1).Cells(Rows.Count, "G").End(xlUp).Offset(1)  
            End With
End Sub

Wenn ich das Sheets(1) rausnehme bei Range N30 kommt der Fehler erwartet Anweisungsende.

Gruß
133883
133883 14.08.2017 aktualisiert um 11:34:41 Uhr
Goto Top
Naja wenn aus zwei Zeilen die dir emeriks geliefert hat, eine machst kein Wunder ...
Ist ja auch so schwer mal in die Referenz zu schauen

Range.Copy
Range.PasteSpecial

Gruß
emeriks
emeriks 14.08.2017 um 13:13:57 Uhr
Goto Top
Trenn Zeile 11 wieder in 2 Zeilen auf oder ein ":" dazwischen.