Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Excel Datenablage

Frage Microsoft Microsoft Office

Mitglied: Rabitionismus

Rabitionismus (Level 1) - Jetzt verbinden

22.12.2009 um 15:11 Uhr, 4216 Aufrufe, 3 Kommentare

Hi,
ich habe ein Excel Ablageproblem...Ziel ist es aus einer Rechnungseingabemaske die Daten zu kopieren und in eine Tabelle(gleiche Datei) abzulegen(einfügen). Dabei ist natürlich wichtig, dass er erstmal die nächste freie Zeile ermittelt.

Soweit so gut. Kopieren tut er, letzte Zeile ermitteln auch...Das mit dem einfügen ist seltsamer Weise mein Problem.
Obwohl er die Daten in einer anderen Tabelle einfügt, bekomme ich die Nachricht, dass es Typenunverträglich ist:

Sub Ablage()

Dim lastRow As Long
Dim firstRow As Long

'Kopiert Rechnungsdaten
Worksheets("Rechnungseingabe").Select
Range("A10:H24").Select
Selection.Copy

'Zählt die bereitsabgelegten Zeilen
Worksheets("PreOrder").Select
firstRow = Range("A2").EntireRow.Select
lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1

'Fügt in die erste freie Zeile ein
ZielZeile = Cells(lastRow, 1).Select
Set ZielZeile = Selection.PasteSpecial(xlPasteValues)

Worksheets("Rechnungseingabe").Select
MsgBox "Daten sind abgelegt!"

End Sub

Ich nehme an, dass es daran liegt, das PasteSpecial eine Range benötigt. Leider weiß ich nicht wie ich diese vernünftig hier deklariere...Kann mir jemand helfen?
Mitglied: Snowman25
22.12.2009 um 15:15 Uhr
als Range gibts du ihm einfach die eine Zelle an, also statt Cells(lastrow,1) ein Range(Cells(lestrow,1),Cells(lastrow,1))
Bitte warten ..
Mitglied: Rabitionismus
22.12.2009 um 15:27 Uhr
Great! Vielen Dank dir! Funktioniert endlich!
Ich hab noch einiges zu lernen...
Bitte warten ..
Mitglied: 76109
22.12.2009 um 17:04 Uhr
Hallo zusammen!

Wobei man das Ganze auch weniger umständlich machen kann:
01.
Sub Ablage() 
02.
    Dim Wks As Worksheet, NextLine As Long 
03.
     
04.
    Set Wks = Sheets("PreOrder") 
05.
     
06.
    Sheets("Rechnungseingabe").Range("A10:H24").Copy 
07.
     
08.
    NextLine = Wks.Cells(Wks.Rows.Count, "A").End(xlUp).Row + 1 
09.
     
10.
    Wks.Cells(NextLine, "A").PasteSpecial Paste:=xlPasteValues 
11.
     
12.
    Application.CutCopyMode = False 
13.
     
14.
    MsgBox "Daten sind abgelegt!" 
15.
End Sub
Und wenn die Zellen im gleichem Format kopiert werden können, dann so:
01.
Sub Ablage() 
02.
    Dim Wks As Worksheet, NextLine As Long 
03.
     
04.
    Set Wks = Sheets("PreOrder") 
05.
     
06.
    NextLine = Wks.Cells(Wks.Rows.Count, "A").End(xlUp).Row + 1 
07.
     
08.
    Sheets("Rechnungseingabe").Range("A10:H24").Copy Destination:=Wks.Cells(NextLine, "A") 
09.
     
10.
    Application.CutCopyMode = False 
11.
     
12.
    MsgBox "Daten sind abgelegt!" 
13.
End Sub
Gruß Dieter
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel (2016): Enthaltenen Text suchen (2)

Frage von ralfkausk zum Thema Microsoft Office ...

VB for Applications
gelöst EXCEL VBA Zellen verbinden. MERGE (6)

Frage von Aximand zum Thema VB for Applications ...

VB for Applications
gelöst VBA Excel Skript - Hilfe! (1)

Frage von Compu2017 zum Thema VB for Applications ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Netzwerke
LAN2LAN Verbindung sehr langsam flaschenhals gesucht (27)

Frage von PixL86 zum Thema Netzwerke ...

LAN, WAN, Wireless
Rogue Access Point (20)

Frage von Axel90 zum Thema LAN, WAN, Wireless ...

Webbrowser
Windows 7 unbeliebte Internetseite sperren (13)

Frage von Daoudi1973 zum Thema Webbrowser ...

E-Mail
Fake E-Mail in Outlook für Demonstartionszwecke (12)

Frage von sascha382 zum Thema E-Mail ...