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 Daten aus Excel-Tabelle extrahieren und in neue Tabelle einfügen

Mitglied: mvh1989

mvh1989 (Level 1) - Jetzt verbinden

16.07.2013, aktualisiert 23:35 Uhr, 5075 Aufrufe, 7 Kommentare

Hallo zusammen,

zuerst einmal muss ich zugeben, dass ich bisher in Excel nur mit Formeln, nie aber mit Makros gearbeitet habe. Nun habe ich leider ein Projekt vorliegen, bei dem ich nicht drum herum kommen werde.
Ich muss aus einer Excel-Tabelle verschiedene Datengruppen extrahieren und eine neue Tabelle kreieren, die Folgendes beinhaltet:

Name Art Stunden Stundenlohn Gesamtbetrag

Dabei gibt es 2 Arten von Löhnen: REGULAR und OVERTIME (für Überstunden).


Die Daten sind dabei immer in Gruppen gleich positioniert, sodass ich mir mit meinen beschränkten Informatik-Kenntnissen folgendes Konzept überlegt habe:
(
Angaben zu Tabelle1:
Spalte A: Name
Spalte B: Art
Spalte C: Stunden
Spalte D: Stundenlohn
Spalte E: Gesamtbetrag
)

for i=1 to "letzte gefüllte Zeile der Tabelle1 (dynamisch/unbekannt)"
{

WENN
Tabelle1.Zeile i/Spalte B = "REGULAR"
DANN
create neue Zeile in Tabelle2
MIT
Tabelle2.Spalte A = Tabelle1.SpalteA/Zeile i+1
Tabelle2.Spalte B = REGULAR
Tabelle2.Spalte C = Tabelle1.Spalte C/Zeile i
Tabelle2.Spalte D = Tabelle1.Spalte D/Zeile i
Tabelle2.Spalte E = Spalte C * Spalte D

WENN
Zeile i.Spalte B = "OVERTIME"
DANN
create neue Zeile in Tabelle2
MIT
Tabelle2.Spalte A = Tabelle1.SpalteA/Zeile i
Tabelle2.Spalte B = OVERTIME
Tabelle2.Spalte C = Tabelle1.Spalte C/Zeile i
Tabelle2.Spalte D = Tabelle1.Spalte D/Zeile i
Tabelle2.Spalte E = Spalte C * Spalte D
}
LEERZEILE
"dann unter der Tabelle:"

Tabelle2.Spalte A = SUMME
Tabelle2.Spalte C = "Summe aller Werte in Spalte C"
Tabelle2.Spalte E = "Summe aller Werte in Spalte E"




1. Funktioniert das so?
2. Es wäre mehr als super wenn mir jemand dabei Hilfestellung geben könnte (Quelltext wäre phänomenal), weil mein Chef mir deshalb schon total im Nacken hängt und ich ehrlich gesagt ziemlich verloren bin

VIELEN VIELEN VIELEN DANK schonmal im Voraus für eure Hilfe!!!

Gruß
Michael
Mitglied: colinardo
17.07.2013 um 09:40 Uhr
Hallo Michael,
also so wie du das geschildert hast sind die zwei Tabellen eigentlich identisch bis auf die Zusammenfassung darunter und diese Zeile:
 Tabelle2.Spalte A = Tabelle1.SpalteA/Zeile i+1
womit der Name der aus der nächsten Zeile aus Tabelle 1 übernommen wird.
dafür braucht es doch kein Makro, da langen doch Formeln ....
oder Fehlen mir da noch irgendwelche Informationen wie z.B. das Spalte B auch andere Werte als "REGULAR" und "OVERTIME" haben kann ?

wenn du unbedingt ein Makro dafür brauchst:
nach deinen Angaben geht folgendes Script
(habe bei den Tabellen die Überschriften berücksichtigt, die Daten fangen also erst in Zeile 2 an;
Die Tabellennblattnamen musst du in Zeile 3 und 4 noch an deine Gegebenheiten anpassen)

01.
Sub CreateTable() 
02.
    Dim ws1 As Worksheet, ws2 As Worksheet, zeile_tbl1 As Range, zeile_tbl2 As Range 
03.
    Set ws1 = Worksheets("Tabelle1") 
04.
    Set ws2 = Worksheets("Tabelle2") 
05.
    Set zeile_tbl1 = ws1.Range("A2") 
06.
    Set zeile_tbl2 = ws2.Range("A2") 
07.
 
08.
    Do While zeile_tbl1.Value <> "" 
09.
        If zeile_tbl1.Offset(0, 1).Text = "REGULAR" Then 
10.
            zeile_tbl2.Value = zeile_tbl1.Offset(1, 0).Value 
11.
            zeile_tbl2.Offset(0, 1).Value = "REGULAR" 
12.
            zeile_tbl2.Offset(0, 2).Value = zeile_tbl1.Offset(0, 2).Value 
13.
            zeile_tbl2.Offset(0, 3).Value = zeile_tbl1.Offset(0, 3).Value 
14.
            zeile_tbl2.Offset(0, 4).FormulaLocal = "=" & zeile_tbl2.Offset(0, 2).Address & " * " & zeile_tbl2.Offset(0, 3).Address 
15.
            Set zeile_tbl1 = zeile_tbl1.Offset(1, 0) 
16.
            Set zeile_tbl2 = zeile_tbl2.Offset(1, 0) 
17.
        ElseIf zeile_tbl1.Offset(0, 1).Text = "OVERTIME" Then 
18.
            zeile_tbl2.Value = zeile_tbl1.Value 
19.
            zeile_tbl2.Offset(0, 1).Value = "OVERTIME" 
20.
            zeile_tbl2.Offset(0, 2).Value = zeile_tbl1.Offset(0, 2).Value 
21.
            zeile_tbl2.Offset(0, 3).Value = zeile_tbl1.Offset(0, 3).Value 
22.
            zeile_tbl2.Offset(0, 4).FormulaLocal = "=" & zeile_tbl2.Offset(0, 2).Address & " * " & zeile_tbl2.Offset(0, 3).Address 
23.
            Set zeile_tbl1 = zeile_tbl1.Offset(1, 0) 
24.
            Set zeile_tbl2 = zeile_tbl2.Offset(1, 0) 
25.
        Else 
26.
            Set zeile_tbl1 = zeile_tbl1.Offset(1, 0) 
27.
        End If 
28.
    Loop 
29.
    zeile_tbl2.Offset(1, 0).Value = "Summe:" 
30.
    zeile_tbl2.Offset(1, 2).FormulaLocal = "=Summe(" & ws2.Range("C2").Address & ":" & zeile_tbl2.Offset(-1, 2).Address & ")" 
31.
    zeile_tbl2.Offset(1, 4).FormulaLocal = "=Summe(" & ws2.Range("E2").Address & ":" & zeile_tbl2.Offset(-1, 4).Address & ")" 
32.
End Sub
Grüße Uwe
gelöste Beitrage bitte auch als solche markieren.Danke
Bitte warten ..
Mitglied: mvh1989
17.07.2013 um 15:24 Uhr
Wow das sieht schonmal sehr hilfreich aus.
Allerdings fehlen da dann doch noch ein paar Informationenum einiges komplexer ist und noch viele andere Werte beinhaltet.

1. Das Muster ist allerdings, dass die benötigten Werte immer gleich um die Worte "REGULAR" und "OVERTIME" positioniert sind (deshalb z.B. Zeile i+1).

2. In Spalte B für die Art in Tabelle 1 stehen neben "REGULAR" und "OVERTIME" auch noch andere Werte (z.B. "Pay Total:"), daher hatte ich mir die Kontruktion über die Wenn-Dann-Abfrage überlegt.

Vielen Dank schonmal für deine grandiose Hilfe Uwe!!!
Bitte warten ..
Mitglied: mvh1989
18.07.2013 um 16:24 Uhr
Keine Idee dazu?
Bitte warten ..
Mitglied: colinardo
18.07.2013 um 19:08 Uhr
lad mal eine Beispieltabelle hoch und Schick den Link via PM ...dann sparen wir uns hier Missverständnisse...
G. Uwe
Bitte warten ..
Mitglied: mvh1989
18.07.2013 um 20:24 Uhr
so geschehen
Bitte warten ..
Mitglied: colinardo
24.07.2013, aktualisiert um 08:21 Uhr
Da dein Wunschscript nun funktioniert, markiere den Beitrag noch als gelöst Merci.
Grüße Uwe
Bitte warten ..
Mitglied: mvh1989
24.07.2013 um 15:33 Uhr
Danke nochmal
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Seitenumbruch in Excel soll neue Tabelle sein

gelöst Frage von killtecMicrosoft Office10 Kommentare

Hallo zusammen, ein Kollege trat gerade an mich ran und hatte gefragt, ob es möglich ist, eine Exceltabelle die ...

Microsoft Office

Excel Daten aus diversen Tabellen sammeln

Frage von FitforLifeMicrosoft Office9 Kommentare

Hallo, habe folgendes Aufgabe zu lösen: Es bestehen diverse Sheets. Beispielhaft hier auf 3 reduziert. Auf Sheet 1 und ...

Microsoft Office

Excel Tabelle

Frage von samsamsamMicrosoft Office17 Kommentare

Hallo Ich habe ein Problem mit einer Tabelle In der ersten Tabebelle hab ich Namen aufgelistet und 1 Zelle ...

Microsoft Office

Excel Tabelle gefiltert auf neues Tabellenblatt

gelöst Frage von Florian86Microsoft Office3 Kommentare

Hallo, ich habe folgendes Problem und zwar möchte ich eine Excel Tabelle mit folgenden Aufbau Datum Lfd. Nr. Menge ...

Neue Wissensbeiträge
Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 13 StundenWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

iOS
IOS 11.2.6 verfügbar
Information von sabines vor 18 StundeniOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 1 TagSicherheit8 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 1 TagInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Heiß diskutierte Inhalte
Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server25 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless22 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

SAN, NAS, DAS
Qnap TS-453S Pro - Anbindung Active Directory
Frage von JuckieSAN, NAS, DAS13 Kommentare

Hallo zusammen, ich habe hier eine Qnap TS-453S Pro die sich mal so absolut gar nicht in das Active ...