Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
im Prinzip würde es mit diesem Einzeiler gehen:
...
range("A1:A" & cells(rows.count,1).end(xlup).row).copy Cells(1, Columns.Count).End(xlToLeft).Offset(0,1)
Auf der linken Seite nimmst Du den gefüllten Bereich von Spalte A und kopierst ihn in die Spalte neben der letzten belegten Zelle von Zeile 1.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• copamundial
Registriert seit: 04.03.2016
Version(en): 2013
Danke! Der Teil funktioniert schonmal ::) Leider bekomme ich von Excel die Fehlermeldung: "Das Makro "Mappe1!Intervall kann nicht ausgeführt werden. Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar, oder alle Makros wurden deaktiviert." Zweiteres kann ich ausschließen, habe alle Makros zugelassen. Kennt jemand das Problem und hat eine Lösung parat? Mein Code sieht jetzt übrigens so aus:
Code:
Intervall()
Dim NextTime As Date
NextTime = Now + TimeValue("00:01:00") 'Zeitintervall festlegen, hier 15 Minuten
Application.OnTime NextTime, "Intervall"
Call My_Procedure 'Eingabe von Schritt, der wiederholt werden soll
End Sub
Sub My_Procedure()
Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Copy Cells(1, Columns.Count).End(xlToLeft).Offset(0, 1)
End Sub
Registriert seit: 04.03.2016
Version(en): 2013
Niemand eine Idee hierzu? :/ Macht mein Code denn Sinn? Wie gesagt, bin noch absoluter Einsteiger...
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
in Deinem geposteten Code fehlt das Sub ...
Korrekt wäre
Sub Intervall()
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 04.03.2016
Version(en): 2013
Hallo! :) Danke für die schnelle Hilfe! Code funktioniert jetzt fast perfekt, sieht jetzt so aus:
Code:
Sub Intervall()
Dim NextTime As Date
NextTime = Now + TimeValue("00:4:00") 'Zeitintervall festlegen, hier 15 Minuten
Application.OnTime NextTime, "Tabelle1.Intervall"
Call My_Procedure 'Eingabe von Schritt, der wiederholt werden soll
End Sub
Sub My_Procedure()
Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Copy Cells(1, Columns.Count).End(xlToLeft).Offset(0, 1)
End Sub
Einziges Problem ist folgendes: Das Makro kopiert ja wunderbar die erste Spalte in die nächste nichtleere Spalte. Soweit so gut. Allerdings wird damit die Webabfrage mit kopiert und somit entsteht keine Zeitreihe. Ich müsste den Code so abändern, dass in die nächste Spalte nur die Werte ohne Formatierung und Datenverbindung eingefügt werden. Wie geht so etwas? Ich hoffe, dass es dann endgültig läuft.
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
Du müsstest das Einfügen etwas anders gestalten, z.B. so in zwei Zeilen:
Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Copy
Cells(1, Columns.Count).End(xlToLeft).Offset(0, 1).PasteSpecial Paste:=xlValues
Was da alles mit PasteSpecial möglich ist, könntest Du auch mit dem Makrorekorder aufzeichnen, z.B. Einfügen von Formeln, Formaten usw.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• copamundial
Registriert seit: 07.03.2016
Version(en): 2013
Hallo copamundial,
auf welche Art führst Du die Datenbankerstellung per Webabfrage in Excel aus?
Registriert seit: 04.03.2016
Version(en): 2013
01.04.2016, 09:01
(Dieser Beitrag wurde zuletzt bearbeitet: 01.04.2016, 09:01 von copamundial.)
Einfach über den Reiter "Daten" und dann "aus dem Web". @schauan vielen, vielen Dank, jetzt funktioniert endlich alles so wie es soll :)