Clever-Excel-Forum

Normale Version: VBA-Makro; QueryTable
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe bei einem QueryTable Makro das problem das wir bestimmte werte als Datum ausgespuckt werden. Der Wert 2.1 bekomme ich als Feb.1 zurück.
Ich habe auch Werte wo zuerst der Tag und dann das Monat dabeisteht.

Wie kann ich es verhindern das ich solche Datumswerte zurückbekomm??
Aktuell sieht mein Code wie folgt aus (Den Code habe ich so Internet gefunden und übernommen und eben leicht angepasst):


Code:
Sub Standing()
Dim Standing As Variant
Standing = Sheets("Links").Range("B1").Value

    With Sheets("Standing").QueryTables.Add(Connection:= _
  "URL;" & Standing & "", _
  Destination:=Sheets("Standing").Range("A1"))
  .Name = "TM1"
  .FieldNames = True
  .RowNumbers = False
  .FillAdjacentFormulas = False
  .PreserveFormatting = True
  .RefreshOnFileOpen = False
  .BackgroundQuery = True
  .RefreshStyle = xlInsertDeleteCells
  .SavePassword = False
  .SaveData = True
  .AdjustColumnWidth = True
  .RefreshPeriod = 0
  .WebSelectionType = xlEntirePage
  .WebFormatting = xlWebFormattingNone
  .WebPreFormattedTextToColumns = True
  .WebConsecutiveDelimitersAsOne = True
  .WebSingleBlockTextImport = False
  .WebDisableDateRecognition = False
  .WebDisableRedirections = False
  .Refresh BackgroundQuery:=False
 
End With
End Sub


MFG
Razzer99
welche Wert in

Sheets("Links").Range("B1").Value   ?
Da ist der Link hinterlegt wovon die Daten kopiert werden. 
So ansich funktioniert das kopieren der Daten. Ich bekomm halt nur teilweise Datumsformate zurück und hätte die gerne als ganz normaler Zahlen
Warum beantwortest du meine Frage nicht ?
Hi snb,


Zitat:Deine Frage(n):

welche Wert in
Sheets("Links").Range("B1").Value   ?


Warum beantwortest du meine Frage nicht ?

hat razzer doch!

Zitat:Da ist der Link hinterlegt wovon die Daten kopiert werden.
So ansich funktioniert das kopieren der Daten. Ich bekomm halt nur teilweise Datumsformate zurück und hätte die gerne als ganz normaler Zahlen
Hat er nicht: ich habe die Wert (.Value) gefragt. Er hat ein 'was' (die Art der Value) Antwort gegeben.
Sry aber so ganz blick ichs nich...
Was das ".Value" bedeutet hab ich keinen blassen schimmer. Ich kenn mich mit VBA eig nicht aus. Wie schon gesagt den Code habe ich so wie er is aus dem Internet kopiert. Wen du aber nur wissen willst was in B1 steht dann ist das ein ganz nornaler Link.

Z.B.:
http://sports.yahoo.com/nba/standings/?alias=conference&season=
Moin,

obwohl ich (meiner Meinung nach) ein recht guter und erfahrener Autofahrer bin, würde ich mich "never ever" in einen Rennwagen setzen und damit losbrausen. Oder einen30-Tonner, Bus, ... Davon verstehe ich nämlich nichts und das kann zu schnell schief gehen. :05: Ich suche andere Wege, um mein Ziel zu erreichen oder lerne zumindest die Grundzüge dessen, was ich vorhabe. Immerhin, einen7,5-Tonner darf und kann ich fahren. Blush

Message understood?

Ich löse so etwas mit Power Query. Beim ersten Mal etwas Aufwand, dann wirklich ganz easy. (Der Hinweis ist für alle, die mindestens Excel 2010 haben, 365 wird m.W.n. nicht unterstützt.) Mit etwas mehr oder weniger Aufwand könnte es (in 365 wohl) auch über Daten | Externe Daten abrufen gehen. Da würde dann das Makro wahrscheinlich aber total anders aussehen.

Mein Beispiel ist  mit PQ erstellt.

Ach ja, die obere Hälfte meines Beitrages war (natürlich) nicht nur auf dich gemünzt, sondern betrifft eine ganze Menge an Fragestellern. Der Anlass, das her zu schreiben war, dass du auch noch enorm mit Informationen "geizt" und ich dann bei deinen Antworten das Gefühl habe, dass dir Nachfragen eher lästig sind und nicht das Angebot, zielgerecht helfen zu können. Dass das nicht so gemeint ist, kann ich mir vorstellen, aber entscheidend ist es ja so, wie es beim Leser (hier: bei mir) ankommt ... Und in dem Sinne: Es ist nicht so schroff gemeint, wie es vielleicht ankommt. Sleepy
Code:
Sub M_snb()
   For Each cl In Columns(7).Resize(, 5).SpecialCells(2, 1)
      cl.Value = Format(cl, "'dd-m ")
   Next
End Sub
Vielen dank für den Tipp mit dem Power Query und dem Beispiel. Ich werde das morgen mal testen