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

Mehere Elemente automatisch auswählen

Frage Entwicklung VB for Applications

Mitglied: jaydotkay

jaydotkay (Level 1) - Jetzt verbinden

22.05.2014, aktualisiert 14:05 Uhr, 802 Aufrufe, 2 Kommentare

Hallo Experten,

ich bräuchte mal wieder einen Tipp von euch.

Meine Situation ist folgende:
Ich habe einige sehr lange Spalten mit Daten. Einige Zeilen (bspw. 90.000 von 150.000) sollen aussortiert werden.

Eine Abfrage die detektiert, welche Zeilen (-nummern) gelöscht werden sollen, habe ich bereits. Anschließend wird die jeweilige Zeile einzeln gelöscht.

Nun mein Problem:
Es dauert ewig jede einzelne Zeile zu löschen.

Meine Idee:
Zu löschende Zeilen auf einmal selektieren und löschen.

Ist das ein gangbarer Weg die Zeit zu verkürzen? Wenn ja, wie kann ich eine weitere Zeile selektieren, ohne die vorher selektierte Zeile zu DE-selektieren?

Danke und viele Grüße
Jaydotkay
Mitglied: colinardo
LÖSUNG 22.05.2014, aktualisiert um 14:05 Uhr
Hallo Jaydotkay,
ich würde die Zeilen in einem Range-Objekt mit Union() zusammenfassen und dann ganz zum Schluss nach dem Durchlauf der Schleife dieses Range-Objekt löschen lassen.
Es ist aber auf jeden Fall immer besser nicht mit der Selection sondern mit Ranges zu arbeiten, da so keine echte sichtbare Selektion stattfindet und dadurch den Vorgang zusätzlich beschleunigt.

Ich habe so was ähnliches mal für das Löschen von leeren Zeilen geschrieben:
01.
Sub delEmptyRows() 
02.
    Dim rngCells As Range, cell As Range, rngCombined As Range, sheet As Worksheet 
03.
    Set sheet = Worksheets(1) 
04.
    Set rngCells = sheet.Range("A1", sheet.Range("A65535").End(xlUp)) 
05.
    For Each cell In rngCells 
06.
        If cell.Value = "" Then 
07.
            If rngCombined Is Nothing Then 
08.
                Set rngCombined = cell.EntireRow 
09.
            End If 
10.
            Set rngCombined = Union(rngCombined, cell.EntireRow) 
11.
        End If 
12.
    Next 
13.
    If Not rngCombined Is Nothing Then 
14.
        rngCombined.Delete 
15.
    End If 
16.
End Sub
Grüße Uwe
Bitte warten ..
Mitglied: jaydotkay
22.05.2014 um 14:07 Uhr
Top, Vielen Dank!

Auch der Code hat gleich alle weitere Fragen geklärt...

Gruß
Jaydotkay
Bitte warten ..
Neuester Wissensbeitrag
Microsoft Office

MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Ähnliche Inhalte
Batch & Shell
Automatisch dateien die sich in einem Ordner befinden, zippen (6)

Frage von cdm1970 zum Thema Batch & Shell ...

Windows 7
0 KB dateien automatisch löschen (5)

Frage von amgm2006 zum Thema Windows 7 ...

Windows 7
TeamViewer 12 normale Version automatisch Konto zuweisen

Frage von Ghost108 zum Thema Windows 7 ...

Heiß diskutierte Inhalte
Exchange Server
Bestehende eMails autoamatisch weiterleiten (21)

Frage von metal-shot zum Thema Exchange Server ...

Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (21)

Frage von Winuser zum Thema Hyper-V ...

SAN, NAS, DAS
gelöst Synology Version 6.1 Probleme (18)

Frage von Hendrik2586 zum Thema SAN, NAS, DAS ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (16)

Frage von ProfessorZ zum Thema Router & Routing ...