Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Zelleninhalt suchen und den Inhalt von 2 Spalten daneben ausgeben

Frage Entwicklung VB for Applications

Mitglied: poopie1971

poopie1971 (Level 1) - Jetzt verbinden

09.02.2013 um 15:17 Uhr, 9092 Aufrufe, 4 Kommentare

Hallo Zusammen,
ich habe ein Problem. Ich möchte gerne in Excel mit einem Makro in einer Tabellenspalte nach einem Wort (einer beruflichen Tätigkeit) suchen, welches in mehreren Zeilen vorkommen kann. Wenn da Wort gefunden wurde, dann soll der Zelleninhalt von den beiden danebenliegenden Zellen (Name und Vorname) in einem neuen Tabellenblatt ausgegeben werden und dann weitergesucht werden bis zum Ende des Tabellenblattes. Im neuen Tabellenblatt soll alles in Zeilen untereinander angeordnet werden, selbstverständlich ohne Freizeilen. Eigentlich ist es ein Filtern, allerdings soll das ganze ohne Filter sondern per Makro angewendet werden.
Der Suchbegriff soll über eine Messagebox vorher abgefragt werden.

Kann mir hier jemand helfen?

Danke und viele Grüße vom Poopie
Mitglied: Pjordorf
09.02.2013 um 15:54 Uhr
Hallo,

Zitat von poopie1971:
allerdings soll das ganze ohne Filter sondern per Makro angewendet werden.
OK. Wie weit bist du denn? Wo im VBA Code steckst du fest bzw. kommst du nicht weiter? Den Code hier mit Coda Tags posten.

Gruß,
Peter
Bitte warten ..
Mitglied: poopie1971
09.02.2013 um 16:21 Uhr
Ich habe noch garnicht angefangen weil ich nicht weiß was da zu tun ist.
Ein Beispiel Code wäre nicht verkehrt.
Bitte warten ..
Mitglied: bastla
09.02.2013 um 19:20 Uhr
Hallo poopie1971!

Etwa so:
01.
Sub Filtern() 
02.
Quelle = "Tabelle1" 'Name der Tabelle mit den Quelldaten 
03.
QSpalte = "B" 'Spalte, in welcher gesucht wird 
04.
Spaltenanzahl = 2 'Anzahl daneben liegender Spalten, aus denen die Inhalte in die Zieldatei übertragen werden sollen 
05.
 
06.
Ziel = "Tabelle2" 'Tabellenname für gefilterte Daten 
07.
AbZZeile = 2 'Eintragen der gefilterten Daten ab dieser Zeile 
08.
ZSpalte = "A" 'Eintragen der gefilterten Daten ab dieser Spalte 
09.
 
10.
Do Until Suche <> "" 'keine leere Eingabe akzeptieren 
11.
    Suche = InputBox("Bitte den Suchbegriff eingeben (oder mit Eingabe von 'Ende' abbrechen):", "Suchbegriff") 
12.
Loop 
13.
If LCase(Suche) = "ende" Then Exit Sub 'Abbruch 
14.
 
15.
Set Q = Worksheets(Quelle) 
16.
Set Z = Worksheets(Ziel) 
17.
ZZeile = AbZZeile 'Startzeile in Zieldatei setzen 
18.
 
19.
With Q.Columns(QSpalte) 
20.
    Set Gefunden = .Find(Suche, LookIn:=xlValues) 'gesamte Spalte der Quelldatei durchsuchen 
21.
    If Not Gefunden Is Nothing Then 'nur wenn der Suchbegriff auch gefunden wurde, die folgenden Schritte durchführen 
22.
        Erste = Gefunden.Address 'erste Fundstelle merken 
23.
        Do 'für alle Fundstellen 
24.
            Z.Cells(ZZeile, ZSpalte).Resize(1, Spaltenanzahl) = Gefunden.Offset(0, 1).Resize(1, Spaltenanzahl).Value 'Werte der Nachbarzellen übertragen 
25.
            ZZeile = ZZeile + 1 'Zeilennummer der Zieltabelle erhöhen 
26.
            Set Gefunden = .FindNext(Gefunden) 'nächste Fundstelle suchen 
27.
        Loop Until Gefunden.Address = Erste 'bis wieder erste Fundstelle gefunden wird (= alle erledigt) 
28.
    End If 
29.
End With 
30.
MsgBox "Fertig." 
31.
End Sub
Das "Drumherum" (zB vorweg Zieltabelle löschen, Spaltenüberschriften, etc) überlasse ich Dir ...

Grüße
bastla

P.S.: Ich hoffe es ist ok, dass ich für die Eingabe keine Messagebox verwendet habe ...
Bitte warten ..
Mitglied: poopie1971
10.02.2013 um 20:32 Uhr
Hallo bastla,
Dein Tip war perfekt. Ich habe ihn noch etwas modifiziert.

Danke vielmals.
Grüße
Poopie
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst T-SQL: Inhalt verschiedener Spalten in eine Spalte schreiben (2)

Frage von Suilven zum Thema Datenbanken ...

Microsoft Office
Excel Nachfrage: Datum aus Spalte ausgeben (2)

Frage von PronMaster zum Thema Microsoft Office ...

Neue Wissensbeiträge
Viren und Trojaner

Link: Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...

Switche und Hubs
gelöst VLAN für Gäste WLAN einrichten über FritzBox und Switch (10)

Frage von Elo-14 zum Thema Switche und Hubs ...