alsdorf2011
Goto Top

Per VBA URL aus einzelne Zellen zusammen setzen

Ich habe eine Tabelle die Wie folgt aufgebaut ist

Spalten A1 und darunter liegende Zeilen (Leerstelle ist immer eine neue Spalte) ( Fomatierungsproblem hier im Forum)

deehqap081vwdum c20309 20309 40525 75596 88900
deehqap071vwdum c20619 10116 10619 20619 21656 21696 52116
deehqap071vwdum c21082 21082 21885
deehqap081vwdum c21232 21232 21233 21234 21235 21236 21238 21243
deehqap071vwdum c21239 21239 21240
deehqap071vwdum c22051 21072 21073 21074 21077 22051 22178
deehqap071vwdum c26573 20729 21518 26573 71307 71323 71340
deehqap071vwdum c26603 21202 25445 25658 26603
deehqap071vwdum c30899 30899 74004
deehqap081vwdum c32590 32590
deehqap071vwdum c33022 32999 33022 33081 33120 41483 41891
deehqap081vwdum c33804 21242 22331 33804
deehqap081vwdum c44989 20664 20907 21220 44954 44989 45021 50938 88781 88803
deehqap081vwdum c50041 45187 45209 50041
deehqap081vwdum c72893 20519 20914 30597 30651 32573 42595 42625 53635 60682 60691
deehqap081vwdum c75621 75621 75639 84000 84001
deehqap071vwdum c99949 99949
deehqap071vwdum c99959 99959

Nun möchte ich in einem weiteren Tabellenblatt daraus eine URL zusammen setzen.
Zelle A1
="http://TESTURL"&Zusammenfassung!A1&"."&Zusammenfassung!B1&"d="&Zusammenfassung!C1&"abschlussurl"

Hier ist es aber so, dass ich möchte dass per Script die Werte ab Spalte B und den Spalten C; D;E;F;.... abgefragt und zusammen gesetzt werden.
d.h. Greife Zelle aus Spalte A & B ab und erzeuge immer eine neue URL aus den Werten C;D;E;F;G bis kein Wert mehr gefunden wird ( immer nur ein Wert und keine Kombination aus allen Spalten)
Wie zu ersehen sind die Spalten unterschiedlich gefüllt. Fix sind immer die Spalten A & B , ab Spalte C ändern sich die Werte immer.
Kommentar vom Moderator Biber am Sep 08, 2011 um 19:35:40 Uhr
Verschoben von "Linux"-"Office" nach "Windows"-"Office"-"Excel"

Content-Key: 166718

Url: https://administrator.de/contentid/166718

Printed on: April 23, 2024 at 12:04 o'clock

Member: colinardo
colinardo May 23, 2011 at 10:35:54 (UTC)
Goto Top
hab hier mal was in VBA zusammengebastelt was Dir weiterhelfen sollte:
Ausgabe der URL findet in Zeile 11 statt...
Sub generateURLs()
    Dim cell As Range
    active_row = 1
    output_row = 1
    Do
        Set cell = Worksheets(1).Cells(active_row, 1)
        If cell.Value <> "" Then  
            active_col = 3
            Do
                If cell.Offset(0, active_col - 1).Value <> "" Then  
                    Worksheets(2).Cells(output_row, 1).Value = "http://TESTURL&quot;&amp;" & cell.Value & "." & cell.Offset(0, 1).Value & "&d=" & cell.Offset(0, active_col - 1).Value  
                    output_row = output_row + 1
                Else
                    Exit Do
                End If
                active_col = active_col + 1
            Loop
            
        Else
            Exit Do
        End If
        active_row = active_row + 1
    Loop
End Sub
Member: alsdorf2011
alsdorf2011 May 23, 2011 at 11:36:26 (UTC)
Goto Top
Danke für das Script und für die schnelle Hilfe.
eine Frage hab ich da noch. Wo kann ich eintragen, dass er sich die quelle von einem bestimmten Tabellenblatt zieht und auch die Ausgabe auf ein bestimmtes Tabellenblatt durchführt???
Member: colinardo
colinardo May 23, 2011 at 11:40:28 (UTC)
Goto Top
in Zeile 06. kannst du das Worksheets(1) z.B. durch Worksheets("Quelle") ersetzen
und in Zeile 11. z.B. in Worksheets("Ziel")
Du kannst dort entweder die Indexnummer des Tabellenblatts verwenden (dann ohne Anführungszeichen) oder den tatsächlichen Namen des Blattes (mit Anführungszeichen)

Grüße Uwe
Member: alsdorf2011
alsdorf2011 May 23, 2011, updated at Oct 18, 2012 at 16:46:58 (UTC)
Goto Top
Vielen lieben Dank Uwe
Damit kann ich erstmal weiterarbeiten. bzw auf eine Rückmeldung zum eingentlichen Problem warten.
Vielleicht weist du ja wo ich was noch ändern muss. Siehe Beitrag:

EXCEL Webabfrage per VBA Script erweitern.
EXCEL Webabfrage per VBA Script erweitern.

Gruß Sven