PDA

Vollständige Version anzeigen : Problem mit "Aus Microsoft Query" Daten werden nicht alle übertragen


Muecke.1982
08.12.2017, 16:28
Hallo miteinander,

ich möchte auf dem Server Daten ablegen so das verschiedene Personen per Datenabfrage darauf zugreifen können.

Dafür teste ich das gerade bei mir am Rechner ein wenig, und Spiel damit herum.


Jetzt habe ich mir ein Quell Datei gebaut, die beinhaltet nur eine ID_Adresse
, Name, und eine PLZ

Die Daten lese ich dann in eine zweite Datei ein.

Das Klappt auch fast alles schon ganz gut, die ID_Adresse ist fast immer ein Zahl, ich habe da mal mit Absicht einen Buchstaben mit rein geätzt, doch dann wird mir der Inhalt nicht mehr mit übertragen, wenn ich in allen Zellen in der Spalte Buchstaben habe dann klappt das wider. .-(

ich habe den Eindruck das Excel erkennt das sich in der Spalte zahlen befinden und kann den Text dann nicht in eine Zahl wandeln also wird nichts übertragen, das finde ich schlecht, wie kann ich in der Abfrage schon sagen das egal was kommt als Text interpretiert werden soll?

So das auch wirklich immer alles mit übertragen wird?

habe meine Muster Datei angehängt, wenn Ihr das testet müsst ihr den Link zur Quelldatei bei euch natürlich noch neu Sätzen.

Würde mich über Tipps sehr freuen.

gruß Mücke

Luschi
08.12.2017, 18:25
Hallo Muecke.1982,

genau was Du hier skizzierst, ist das Problem jedes Datenvergleichs/-abgleichs; inkonsistente Daten werden per Abfrage aufeinander losgejagt und der User, also auch Du, erwartet wundervolle Ergebnisse.
Was soll das! Bevor man solche Datenvergleiche durchführt, muß klar sein, daß die Daten in sich stimmig sind - nur dann sind auch sinnvolle Ergebnisse zu erwarten.
Ich kopiere solche Daten per Vba-Klassenprogramm erst mal in eine vordefinierte Access-Datenbank; da kann ich prüfen, ob die Vorrausetzungen stimmen - ansonsten müssen die Ausgangsdaten erst mal bereinigt werden. UND erst dann ist der Datenvergleich sinnvoll.

Gruß von Luschi
aus klein-Paris

jack_D
08.12.2017, 19:28
Moin Moin,

Vorab:Luschi hat grundsätzlich recht.
Das Problem ist imho aber ein anderes.

Der M-Code passt automatisch Dateiformate an.
Das solltest du handisch machen, und die entsprechende Spalte auf variant machen
Dazu einfach die glaub 2. Code Zeile löschen (Auto Typ )

Kann’s aber leider grad nicht testen, da ich keinen pc zur Hand hab....

Grüße

Drogist
09.12.2017, 01:11
Moin,
ich stimme meinen Vor"rednern" voll und ganz zu.
Aber eine Frage: Seit Excel 2010 gibt es einen würdigen Nachfolger, nämlich das Power Query (teils nur als Add-In von Microsoft). DAMIT geht es prima, jedes Feld der Spalte_A wird einwandfrei übernommen.

Muecke.1982
09.12.2017, 10:26
@Luschi: ich gebe dir recht man muss die Daten auch so eingeben wie es Definiert wurde, jedoch hat Excel die Eigenart eine Zelle die Als Text Formatiert wurde unter Umständen selbst wider Umformatieren wenn ein Zahl eingegeben wird. Das macht das ganze etwas schwer.

Da meine ID mit einer Kunden Nummer gleich geätzt ist und alles was nur ein Nummer ist ist ein Kunde der auch kaufend ist, alle anderen haben ein I- vor der Kunden Nummer das I Steht in dem Fall für Interessent.

Das ist dann irgend wie Doof wenn man hier nicht alles übernommen bekommt.

das mit deinem Makro habe ich noch nicht ganz verstanden. :-( und du sprichst von Datenvergleich, ich mache aber gar keinen Daten Vergleich.

Ich Hole Daten aus einer Quell Datei uns Schreibe die in eine User Datei hinein, und das soll am besten 1:1 passieren, Ohne einen Vergleich Berechnung etc.


@jack_D: Wo kann ich denn den M-Code (Power Query Code) einsehen?
gibt es dafür eine Konsole wie beim VBA?

ich glaube ich wies was du meinst was du machen möchtest, mir fehlt jedoch jegliche Idee wo ich so etwas machen könnte.

@Drogist: ich dachte ich arbeite mit dem Power Query schon, ich verwende die 2013 Version Aktuell.

und mache das so:

Muecke.1982
09.12.2017, 10:53
ich habe mir jetzt ein Makro gebaut, das mir die Quell Tabelle Markiert, und alle Zellen in Text Formatiert.

So kommt mein Fehler zumindest nicht mehr, aktuell, ich finde das zwar keine schöne uns saubere Lösung doch es ist erst mal eine ;-)

Bin an einer anderen Sauberen Komfortableren Lösung dennoch interessiert wenn es die gibt.

Da isst das Makro das ich geschrieben habe:
'
' Mobul1
'

Option Explicit

Sub Zellen_in_TEXT_Formatieren()

' Tabellenblatt Aktivieren
Sheets("Tabelle1").Select

' Gesamte (STRG + T) Tabelle Markieren
Range("Quell_Tabelle").Select

' Alle Markieren Zellen Formatieren "TEXT"
Selection.NumberFormat = "@"

' Zelle A1 Aktivieren
Range("A01").Select

End Sub

EDIT: ich könnte den Code jetzt natürlich bei jeden Speichern automatisch aufrufen lassen, dann wäre es etwas Komfortabler ;-)


Gruß Mücke

Drogist
09.12.2017, 13:04
Moin,
in der Tat, du verwendest Power Query ...
Warum auch immer du den riesigen Umweg über die Query-Variante wählst, ich gehe da etwas pragmatischer vor:

Daten | Neue Abfrage | Aus Datei | Aus Arbeitsmappe
Auswahl der Quell-Date (hier: Quelle.xlsx)
Entweder die Intelligente Tabelle (obere Auswahl) oder das Arbeitsblatt anklicken
[Bearbeiten]
Jetzt kannst du (wenn du willst) die Spalte ID_Adresse vom Datentyp Beliebig nach Text setzen


Das war's dann auch schon. Herz, was willst du mehr? :cool:
Ach ja, da du (noch) 2013 hast solltest du immer dein Power Query aktualisieren, das geschieht nicht automatisch (erst ab 2016/365).

jack_D
10.12.2017, 12:05
Moin Moin

Ich hab’s mir gestern mal
Angeschaut, es ist tatsächlich so, dass über den “Umweg” von Mücke man nicht an den Mcode kommt. Er ist in PQ nicht zu finden.

Ich empfehle daher das query über PQ zu erstellen (so wie es der Kollege Drogist bereits empfohlen bzw. beschrieben hat. )

Grüße Jack

Muecke.1982
11.12.2017, 14:02
Servus zusammen,

wenn ich im Menüband auf "DATEN" Klicke finde ich dort keinen Reiter mit " Aus Datei" :-( oder suche ich an der Falschen Stelle? Oder muss ich mir doch noch ein Zusatz Tool herunter laden dafür?

Ich verwende Excel 2013 bei mir.

Gruß Mücke

Drogist
11.12.2017, 15:31
Ja, bei Excel 2013 musst du dir Power Query als Add-In bei Microsoft herunterladen. Die Installation geht vollautomatisch, ist also kein Problem. Danach wirst du dem Menüpunkt Power Query aufrufen und dort fündig werden.

Muecke.1982
12.12.2017, 08:09
Hallo zusammen,

ich habe mir das "Microsoft Power Query für Excel (https://www.microsoft.com/de-DE/download/details.aspx?id=39379)" jetzt herunter geladen.

Merkwürdigerweise die 32bit Version obwohl mein PC eine 64Bit Architektur hat.


ich habe jetzt einen Weiteren Reiter im Menüband "Power Query" dort ist dann auch "Aus Datei" zu finden, wenn ich das darüber mache dann funktioniert das auch richtig :-).
habe auch ein wenig herum gespielt und gefunden wie man eine Spalte als Text interpretieren lässt.


DANKE.

Ihr habt von M-Code noch gesprochen denn habe ich leider noch nicht gefunden.
Oder Verstehe ich da was Falsches Drunter, bei M-Code denke ich an Text Zeilen wie sie beim VBA verwendet werden, zumindest so was in dem Stile.

Mit dem Power Query werden ganz viele Neue Türen und Fenster mir gezeigt, Oh habe ich gerade Lust das alle zu erkunden, leider ist die Zeit sehr Knapp.

DANKE Euch allen für die Hilfe.

Gruß Mücke

Der Steuerfuzzi
12.12.2017, 08:24
Hallo,

Merkwürdigerweise die 32bit Version obwohl mein PC eine 64Bit Architektur hat.Das hängt an der Office-Version. Bei einem 32 Bit Office brauchst Du auch ein 32 Bit PQ.

Ihr habt von M-Code noch gesprochen denn habe ich leider noch nicht gefunden. Im Abfrage-Editor von PQ kannst Du auf den Reiter "Ansicht" gehen und dort gibt es einen Menüpunkt "Erweiterter Editor". Dort steht der gesamte M-Code Deiner Abfrage.

Muecke.1982
12.12.2017, 09:21
Servus,


Das hängt an der Office-Version. Bei einem 32 Bit Office brauchst Du auch ein 32 Bit PQ.
ich dachte immer das wenn das WIN ein 64Bit ist das dann auch alle Programm 64Bit haben müssen. So habe ich wider was dazu gelernt.


Im Abfrage-Editor von PQ kannst Du auf den Reiter "Ansicht" gehen und dort gibt es einen Menüpunkt "Erweiterter Editor". Dort steht der gesamte M-Code Deiner Abfrage.
Cool, das habe ich jetzt gefunden, danke.

Jetzt geht das Große lernen und testen und probieren los :-)

DANKE.

Gruß Mücke

Drogist
12.12.2017, 09:35
ich dachte immer das wenn das WIN ein 64Bit ist das dann auch alle Programm 64Bit haben müssen.

Ganz im Gegentum ... :cool: Insbesondere dein Excel sollte wenn möglich immer 32-Bit sein, das sagt sogar MS selbst. Mit der Excel-64-Bit Version handelst du dir reichlich Probleme ein.

jack_D
12.12.2017, 10:12
Mit der Excel-64-Bit Version handelst du dir reichlich Probleme ein

geht so ^^

Ich hab keine Probleme mit 64Bit. Vorallem wenns mit an größere Datenmengen geht, da gibts halt einfach mal keine Speicherlimit

Schwierig wird es imho erst in VBA ..
Aber auch da gibts ausreichend abhilfe =)

Grü´ße

Drogist
12.12.2017, 12:29
Wir (aus der Fraktion "Etwas mehr Erfahrung...") finden fast immer einen Ausweg, auch wenn es bei Apis mitunter mächtig klemmt. Und ja, gerade wegen extrem großer Datenmengen wurde dir 64-Bit Version ja geschaffen. Aber ich ziehe dann immer noch eine Datenbank vor, wo ich dann die Daten nach Excel gefiltert extrahiere.