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

Excel Makro (VBA) Datenübertragung von Tabelle 1 zu Tabelle 2

Frage Microsoft Microsoft Office

Mitglied: minimin

minimin (Level 1) - Jetzt verbinden

03.05.2014 um 23:24 Uhr, 7771 Aufrufe, 5 Kommentare

Hallo alle zusammen,

ich bin noch nicht fortgeschritten im Umgang mit VBA und würde gerne wissen, wie man bestimmte Werte aus einer Tabelle 1 in Tabelle 2 überträgt, wenn man zu bestimmten Zellwerten aus Zahlen in der darauffolgenden Spalte einen mit dem Zellwert verbundenem Text immer als Paar übertragen haben möchte (Bsp siehe folgende Bilder).

Also im Beispiel habe ich bestimmte Zahlen und dementsprechende Texte in Tabelle 1. Siehe Tabelle 1 bzw. erstes Bild:
e528331e958eec68b7c60d7d07cb6420 - Klicke auf das Bild, um es zu vergrößern


In Tabelle 2 möchte ich nun in einer anderen Anordnung bestimmten Zahlen die dementsprechenden Texte zuordnen und diese einfügen. Siehe Tabelle 2 bzw. zweites Bild:

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

Dies bedeutet, dass ich nun gerne neben "123" gerne "Buch" stehen hätte und neben "125" gerne "Computer". Analog dazu die anderen Zahlen-Text-Paare.

Wie gestalte ich nun ein Makro in Visual Basic, damit ich dieses Verfahren mit vielen Zahlen & Texten automatisieren kann?


Ich hoffe, ihr könnt mir helfen!

Viele Grüße!
Mitglied: hcfel1
04.05.2014, aktualisiert um 03:33 Uhr
Erste Tabelle in ein Feld einlesen und dann mit
for 0 to ubound(feld)
if ...

vergleichen...
genug Denkanstoß?

dazu gibts aber bereits eine Funktion
sverweis oder wverweis


wie gut sind deine VBA Kenntnisse ?
Bitte warten ..
Mitglied: minimin
04.05.2014 um 23:42 Uhr
Danke für die Antwort, "sverweis" ist doch nur für eine einzelne Suche da, nicht für die komplette Übertragung auf einem Klick für alle Werte, oder? Wie automatisiere ich das ganze?
Ich habe einen VBA Kurs besucht, aber um es selbst richtig zu schreiben, fehlt es mir an Erfahrung.
Bitte warten ..
Mitglied: hcfel1
04.05.2014 um 23:50 Uhr
sverweis kann dann ja "runter gezogen werden" <-- Formel Autovervollständigen

Wenn du es mit VBA als Übung lösen willst, teile mir mit ob du den Ansatz verstanden hast, ansonsten werd ich ausführlicher...
Bitte warten ..
Mitglied: colinardo
05.05.2014, aktualisiert um 11:44 Uhr
Hallo minimin, Willkommen im Forum!
Hier ein Beispiel mit VBA zur Übung, auch wenn es mit SVERWEIS (siehe im Demo-Sheet, Tabelle 'SVERWEIS') einfacher zu realisieren ist:
Und hier noch das Demo-Sheet dazu.
01.
Sub Werte_Zuordnen() 
02.
    Dim dic As Object, wsSource As Worksheet, wsTarget As Worksheet, rngDataStart As Range, rngDataEnd As Range, rngTargetStart As Range, rngTargetEnd As Range, cell As Range 
03.
     
04.
    'Dictionary Object das die Zuordnung der Daten der ersten Tabelle enthält 
05.
    Set dic = CreateObject("Scripting.Dictionary") 
06.
     
07.
    'Worksheets referenzieren 
08.
    Set wsSource = Worksheets(1) 
09.
    Set wsTarget = Worksheets(2) 
10.
     
11.
    'Referenzbereich der ersten Tabelle festlegen 
12.
    Set rngDataStart = wsSource.Range("A2") 
13.
    Set rngDataEnd = rngDataStart.End(xlDown) 
14.
     
15.
    'Zielbereich der zweiten Tabelle 
16.
    Set rngTargetStart = wsTarget.Range("A2") 
17.
    Set rngTargetEnd = wsTarget.Cells(Rows.Count, 1).End(xlUp) 
18.
     
19.
    'Dictionary mit den Werten der ersten Tabelle füllen 
20.
    For Each cell In wsSource.Range(rngDataStart, rngDataEnd) 
21.
        dic.Add cell.Value, cell.Offset(0, 1).Value 
22.
    Next 
23.
     
24.
    'Zieltabelle durchgehen und Werte zuordnen 
25.
    For Each cell In wsTarget.Range(rngTargetStart, rngTargetEnd) 
26.
        ' Wenn Wert der Zelle nicht leer ist und der Wert in der Zuordnungstabelle vorhanden ist dann schreibe den Wert in die Zelle daneben 
27.
        If cell.Value <> "" And dic.Exists(cell.Value) Then 
28.
            cell.Offset(0, 1).Value = dic.Item(cell.Value) 
29.
        End If 
30.
    Next 
31.
End Sub
Grüße Uwe
Bitte warten ..
Mitglied: minimin
07.05.2014 um 22:23 Uhr
Hallo Uwe,

herzliches Dankeschön !
Es ist eine große Hilfe für mich!

Viele Grüße

Minimin
Bitte warten ..
Ähnliche Inhalte
VB for Applications
SNMP Abfrage in EXCEL über VBA (7)

Frage von SebastianL zum Thema VB for Applications ...

VB for Applications
Excel Makro zum Suchen von Spalten und exportieren in CSV (3)

Frage von Raptox zum Thema VB for Applications ...

Microsoft Office
gelöst Excel Makro zum Sortieren von Spalten an größeres Dokument Anpassen (2)

Frage von Rolfor zum Thema Microsoft Office ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(4)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft Office
Saubere HTML aus Word-Dokument (16)

Frage von peterpa zum Thema Microsoft Office ...

Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (15)

Frage von marshall75000 zum Thema Router & Routing ...

Hosting & Housing
gelöst Webserver bei WIX, aber DNS Server wo anders (9)

Frage von laster zum Thema Hosting & Housing ...