Top-Themen

Aktuelle Themen (A bis Z)

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 Schleife durchschnittlich kompliziert

Mitglied: ChrisDynamite

ChrisDynamite (Level 2) - Jetzt verbinden

15.08.2013, aktualisiert 22:07 Uhr, 1893 Aufrufe, 7 Kommentare, 1 Danke

Guten Abend,

die Umsetzung habe ich mir überlegt, nur jetzt scheitert es an der Syntax.

Wie erreiche ich den effekt, dass in excel per vba folgendes passiert. die koplette spalte b soll in einem datenblatt nach dem wort "konto" durchsucht werden und sobald dieses wort gefunden wird soll der wert 1 feld über konto eine zeile links neben konto und auch an alle weiteren felder darunter geschrieben werden, bis wieder in spalte b das wort konto vorkommt und wieder der wert 1 feld über dem wort konto links neben das feld konto geschrieben wird, so lange bis wieder das wort konto vorkommt usw. das wort konto kann nur in spalte b vorkommen und es sollte von oben nach unten abgearbeitet werden, bis das wort konto nicht mehr erscheint.

alternative: kennt jemand ein buch, welches das an mich heranführen kann?

grüße chris

vorher

85dff4d907ca2a5111c13c272e2f201f - Klicke auf das Bild, um es zu vergrößern

nachher

d295fe890570cd077fa46baf5f1d199a - Klicke auf das Bild, um es zu vergrößern
Mitglied: bastla
15.08.2013, aktualisiert 16.08.2013
Hallo ChrisDynamite!

Das sollte sich etwa so machen lassen:
01.
Sub Aufbereiten() 
02.
AbZeile = 2 
03.
Spalte = 2 'Spalte B 
04.
Suche = "*Konto*" 
05.
 
06.
Zeile = AbZeile 
07.
Wert = Cells(Zeile, Spalte).Value 'Zelleninhalt holen 
08.
Do While Wert <> "" 'Solange Zelle nicht leer 
09.
    If Wert Like Suche Then 'Suchbegriff enthalten? 
10.
        Konto = Cells(Zeile - 1, Spalte).Value 'Konto aus darüber liegender Zelle lesen 
11.
    End If 
12.
    Cells(Zeile, Spalte - 1).Value = Konto 'Konto links neben aktueller Zelle eintragen 
13.
    Zeile = Zeile + 1 'nächste Zeile 
14.
    Wert = Cells(Zeile, Spalte).Value 'Zelleninhalt holen 
15.
Loop 
16.
End Sub
Grüße
bastla
Bitte warten ..
Mitglied: ChrisDynamite
15.08.2013 um 23:21 Uhr
ich werde den code testen, schonmal vielen Dank!

bitte nenne mir noch ein gutes buch indem ich das auch mal selbst checken kann.
Bitte warten ..
Mitglied: ChrisDynamite
15.08.2013, aktualisiert um 23:31 Uhr
kuhl vielen dank der code funktioniert echt gut. prima eins fällt mir noch auf, sobald die abfrage nach einem zweiten konto wert kommt, macht das script nicht mehr weiter siehe bild

df7ca077200066ec586f817271fcb1a0 - Klicke auf das Bild, um es zu vergrößern

danke vielmals!

normalerweise sollten nun die vorderen zeilen mit dem neuen wert über konto gefüllt werden, also 5611
Bitte warten ..
Mitglied: ChrisDynamite
15.08.2013, aktualisiert um 23:43 Uhr
ich habe nun die felder "besser formatiert" also dass nicht mehr die grünen ecken angezeigt werden. nun ist der effekt, dass alle felder davor mit dem wert 5610 beschrieben werden und 5611 missachtet wird.

Nachtrag, nein es scheint eher so, als dass in zeile 70 die vba nichts mehr machen zu wollen, wen ich das feld konto zwischendrin eintrage wird der wert darüber übernommen. super sache nur leider hört das script in zeile 70 auf.
Bitte warten ..
Mitglied: ChrisDynamite
15.08.2013 um 23:46 Uhr
solange zelle nicht leer dürfte das problem sein.
Bitte warten ..
Mitglied: ChrisDynamite
15.08.2013 um 23:50 Uhr
ich habe das nun gelöst indem ich festgelegt habe Do While Wert <> "exit" 'Solange Zelle nicht leer. den wert exit habe ich gaaaaaanz tief unten gelegt. gibt es noch galantere möglichkeiten. wirklich super script. das hat für zumindest freitag meinen kopf gerettet. danke bastla
Bitte warten ..
Mitglied: bastla
16.08.2013 um 08:01 Uhr
Hallo ChrisDynamite!

Aufgrund Deines Beispiels war ich von zusammenhängenden Daten ausgegangen - Alternative:
01.
Sub Aufbereiten() 
02.
AbZeile = 2 
03.
Spalte = 2 'Spalte B 
04.
Suche = "*Konto*" 
05.
 
06.
BisZeile = Cells(Rows.Count, Spalte).End(xlUp).Row 'letzte Zeile mit einem Wert in "Spalte" ermitteln 
07.
 
08.
For Zeile = AbZeile To BisZeile 
09.
    Wert = Cells(Zeile, Spalte).Value 'Zelleninhalt holen 
10.
    If Wert Like Suche Then 'Suchbegriff enthalten? 
11.
        Konto = Cells(Zeile - 1, Spalte).Value 'Konto aus darüber liegender Zelle lesen 
12.
        Cells(Zeile - 1, Spalte - 1).Value = "" 'Zellinhalt neben neuem Konto löschen 
13.
    End If 
14.
    If Trim(Wert) <> "" Then Cells(Zeile, Spalte - 1).Value = Konto 'Wenn Zelle nicht leer, Konto links neben aktueller Zelle eintragen 
15.
Next 
16.
End Sub
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel 2010 VBA Schleife mit Bedingungen
gelöst Frage von yonko22147Microsoft Office3 Kommentare

Hallo, Sorry ich stehe sowas von auf dem Schlauch das mir die einfachsten Sachen nicht mehr einfallen. Ich habe ...

Microsoft Office

MS Office Excel - wie kann ich aus bis zu 7 Datumsangaben eine durchschnittliche Tagesanzahl erhalten?

gelöst Frage von perpendicularMicrosoft Office6 Kommentare

Tag allerseits, ich stehe mal wieder mit Excel (2010) auf dem Kriegsfuß. Folgende Herausforderung: - ich habe ein Arbeitsblatt ...

Datenbanken

Access 2010 komplizierte Abfrage

gelöst Frage von Dr.CornwallisDatenbanken3 Kommentare

Hallo zusammen, ich bräuchte eine Query die folgendes macht(sofern das überhaupt möglich ist): Der benötigte Table hat folgende Felder: ...

Batch & Shell

Batch Schleife als FOR-SCHLEIFE

gelöst Frage von mp2711Batch & Shell2 Kommentare

Mit den FOR-Schleifen habe ich mich leider bislang zu selten auseinander gesetzt, aber da ich sonst gerade nicht weiter ...

Neue Wissensbeiträge
Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 10 StundenWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 13 StundeniOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 1 TagWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++34 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless25 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

Windows Server
Alten DC entfernen
Frage von smartinoWindows Server24 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...