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

VBA Datei Kopieren und Zeilen löschen

Frage Entwicklung VB for Applications

Mitglied: 95590

95590 (Level 1)

10.12.2010, aktualisiert 08:07 Uhr, 4419 Aufrufe, 5 Kommentare

Hi!
Hab folgendes vor: Habe ein Excel-Dokument, dass möchte ich in ein neues Dokument kopieren und dieses dann bearbeiten und abspeichern.
Jetzt hab ich das Problem, dass er mir nie das neuerstellte dokument bearbeitet sondern immer das Orginal. Und er löscht auch nicht alle Zeilen sondern immer nur eine.
Hier ist mein Code. Vielen Dank!

Private Sub CommandButton2_Click()
Dim hilf As Integer
hilf = 0
Arbeitsblatt1 = ActiveWorkbook.Name
Workbooks.Add
fileSaveName = Application.GetSaveAsFilename( _
fileFilter:="(*.xls), *.xls")
Arbeitsblatt2 = ActiveWorkbook.Name
Windows(Arbeitsblatt1).Activate
Cells.Select
Selection.Copy
Windows(Arbeitsblatt2).Activate
ActiveSheet.Paste
For y = 1 To 300
If hilf = 0 Then
Adresse = Range("A" & y)
Adresse = Left(Adresse, 9)
If Adresse = "(* Analog" Then
Rows(y).Delete
hilf = 1
Else
End If
Else
Rows(y).Delete
End If
Next y
If fileSaveName <> False Then
ActiveWorkbook.SaveAs fileSaveName
End If
MsgBox "Datei gespeichert unter " & fileSaveName
End Sub
Mitglied: 76109
10.12.2010 um 11:09 Uhr
Hallo FredFesl !

Versuchs mal so:
01.
Option Compare Text 
02.
 
03.
Private Sub CommandButton2_Click() 
04.
    Dim FileSaveName As Variant, EndLine As Long, i As Long 
05.
     
06.
    FileSaveName = Application.GetSaveAsFilename(fileFilter:="(*.xls), *.xls") 
07.
     
08.
    If FileSaveName = False Then Exit Sub 
09.
     
10.
    Cells.Copy 
11.
     
12.
    Workbooks.Add:  ActiveSheet.Paste 
13.
    
14.
    Application.CutCopyMode = False 
15.
     
16.
    EndLine = 300 
17.
     
18.
    For i = 1 To EndLine 
19.
        If i > EndLine Then Exit For 
20.
         
21.
        If Cells(i, "A") Like "(* Analog*" Then 
22.
            Rows(i).Delete:  i = i - 1:  EndLine = EndLine - 1 
23.
        End If 
24.
    Next 
25.
     
26.
    Range("A1").Select 
27.
     
28.
    ActiveWorkbook.SaveAs FileSaveName 
29.
     
30.
    MsgBox "Datei gespeichert unter " & FileSaveName 
31.
End Sub
Gruß Dieter
Bitte warten ..
Mitglied: 95590
10.12.2010 um 11:28 Uhr
O.K. das klappt schon mal. Jetzt hab ioch nur noch das Problem, dass er es nicht im neu erstellten löscht sondern im Orginal. Ich versteh des net. Komisch.
Bitte warten ..
Mitglied: 76109
10.12.2010 um 12:03 Uhr
Hallo FredFesl!

Ich vermute mal, das Du beim FileSaveAS-Dialog keinen neuen Namen angibst?

Gruß Dieter
Bitte warten ..
Mitglied: 95590
10.12.2010 um 12:42 Uhr
Also habs nun selber gelöst.
Hab nun alles in eine Funktion gepackt. Dann funktioniert es. Warum auch immer.

Vielen Dank Dieter!
Bitte warten ..
Mitglied: 76109
11.12.2010 um 00:53 Uhr
Hallo FredFesl!

Freut mich, dass Du es selbst lösen konntest.

Habe wohl etwas geschlafen und das Steuerelement im Sheet der Original-Datei vollkommen ignoriert. Getestet hatte ich den Code leider nur in einem Modul ohne Steuerelement:

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Perl
gelöst Mit Perl aus einer Datei teilidentische Zeilen löschen (5)

Frage von Jeduja zum Thema Perl ...

Batch & Shell
gelöst Ordner per Batch verschieben, Datei kopieren (2)

Frage von Shape.Shifter zum Thema Batch & Shell ...

C und C++
gelöst In einer Windows Form Anwendung per Button eine Datei kopieren (4)

Frage von Knuefi zum Thema C und C ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...