SharePointCommunity
Die deutschsprachige Community für SharePoint, Office 365 und mit Azure

Daten aus einer Excel-Tabelle in eine bestehende SharePoint-Liste übertragen

bewertet von 0 Usern
Nicht beantwortet Dieser Beitrag hat 0 Geprüfte Antworten | 12 Antworten | 3 Followers

Top-500-Beitragsschreiber
46 Beiträge
AciDRaiN erstellt in 24 Jul 2009 14:01

Servus liebe SharePointler,

folgendes Problem bzw. folgende Frage:

Wie kann ich Excel-Daten in eine bereits bestehende SharePoint-Liste importieren?
Ich finde die ganze Zeit nur Anleitungen wie man Daten aus Excel in eine NEUE Liste importieren kann.
Das hilft mir aber nicht.
Ist das überhaupt möglich?
Sorry, falls diese Frage schon mal gestellt wurde, aber mir ist bei der Suche durch die Foren fast der Kopf auf die Tastatur geknallt.

Vielen Dank schon mal im Voraus und ein super Wochenende wünsche ich euch.
Greetz,

AciD

Greetz,

AciD

Alle Antworten

Top-10-Beitragsschreiber
18.849 Beiträge

Öffne die Liste in der Datenblattansicht (Aktionen-Menü) und Du kannst die Daten per Copy&Paste einfügen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
16 Beiträge

Hi

 

Sollten es sehr viele Daten sein, kannst du die Liste auch in Access öffnen, und mit dem Import Tool von Access die Daten aus Excel an die bestehende Tabelle/Liste anfügen. Die Datenansicht reicht für die meisten Fälle aber aus.

Gruß Jens

Gruß Jens Dressler

Top-500-Beitragsschreiber
46 Beiträge

Okay, schon mal danke für Tips.

Und wie verhält es sich dann mit den IDs?
Die importierten Einträge erhalten dann in ihrer "neuen Umgebung" neue IDs, oder?

Also nehmen wir an es existieren bereits Einträge mit den IDs von 1 bis 3000. Ich importiere dann, sagen wir mal, 500 weitere Einträge in diese Liste.
Diese erhalten dann sinnigerweise die IDs 3001 bis 3500?

Ich will euch jetzt nicht so im Regen stehen lassen und bin auch dankbar für die Hilfe, aber ich habe momentan sehr viel zu tun. Ich werde dennoch versuchen mal heute oder morgen Abend evtl. eine etwas detailliertere Beschreibung des eigentlichen Problems zu verfassen.
Vielleicht fällt euch dazu ja etwas ein. Weil ich bin da mit meinem - zugegebenermaßen recht kleinen - Latein so langsam am Ende :)
Greetz,

AciD

Nachtrag: Copy und Paste funktioniert zwar, doch wie gesagt, da gibt es noch ein anderes Problem(chen !!!)
 

Greetz,

AciD

Top-10-Beitragsschreiber
18.849 Beiträge

Das Feld ID in SharePoint wird immer so wie Du es beschrieben hast gehandhabt und dieses Verhalten kannst Du auch nicht abstellen oder ändern. Ich dachte Du willst Daten aus Excel übernehmen? Dort gibt es keine ID.

Falls Du in Excel irgendein Feld hast, das als ID fungiert, dann spendiere doch Deiner SharePoint-Liste ein zusätzliches Feld Excel-ID und schreibe die Daten dort hinein. Die SharePoint-ID kannst Du dann einfach ignorieren.

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
46 Beiträge

Achtung: Unter Umständen verwirrend

Ich habe eine alte Auftragsdatenbank, die es in SharePoint zu integrieren gilt.
Meine Aufträge haben natürlich eine feste Auftragsnummer die auch nicht veränderbar sein darf.
Da kann es natürlich mal passieren, dass meine Auftragsnummern nicht immer mit den internen IDs übereinstimmen.
Wenn ich jetzt beispielsweise einen neuen Auftrag anlege und diesen aber, aus welchen Gründen auch immer, lösche und dann noch mal neu anlege... Dann ist ja schon mal eine ID "verloren".

Naja, zu erst hatte ich mir ja Gedanken darüber gemacht, dadurch dass meine Auftragsnummern halt nicht der ID entsprechen und somit über ein eigenes Feld eingetragen werden, wie ich diese Nummern unveränderbar mache. Wie diese Nummern am besten automatisch (mittels Workflow) vergeben werden und eine Manipulation nicht möglich ist.
Eine weitere Vorgabe ist nämlich, dass die neuen Aufträge dann mit der Nummer 4000 beginnen sollen

Also desto mehr ich versuche das alles zu erklären desto verwirrender wird es für mich ^^


Okay, ganz grobe und trockene Beschreibung:

Meine Auftragsdatenbank soll nicht mit 1 anfangen zu zählen, sondern erst bei 4000. Dies habe ich mittels eines Workflows gewährleistet der ausgelöst wird sobald ein neues Element erstellt oder ein bestehendes geändert wird.
Der Workflow schlägt die ID nach, rechnet "+ 3999", speichert das dann in einer Variable und schreibt es mir in mein Feld "Auftragsnummer" rein.
Ich lege also einen neuen Auftrag an und dieser beginnt dann mit der gewünschten Auftragsnummer 4000.
Gleichzeitig ist sichergestellt, dass die Nummer nicht manipulierbar ist. Wird ein Element geändert, führt der Workflow ja die gleiche Prozedur noch mal durch und schreibt den durch die Formel eindeutigen Wert wieder ins Feld.

Und jetzt kommt der große Denkfehler bei der ganzen Geschichte:
Das Problem mit den alten Auftragsnummern und den IDs habe ich ja eingangs, "leicht" verworren, beschrieben.

Wenn ich meine alten Aufträge (habe das mal mit einem Satz bestehend aus 10 alten Aufträgen getestet) in die SharePointliste mittels Datenblattansicht importiere, werden mir die Auftragsnummern zunächst noch korrekt angezeigt.
Habe ich jetzt allerdings einen Nachtrag bei einem alten Auftrag zu machen, startet sich der Workflow und rechnet dann wieder ID + 3999 und verändert meine Auftragsnummer dementsprechend.
Das bedeutet, selbst wenn ich mir die Mühe mache und meine alten Aufträge so importiere (oder ein Praktikant macht das mühseelig von Hand, ist ja auch egal...) dass meine Auftragsnummern mit den IDs endlich übereinstimmen, habe ich das Problem, dass mir der Workflow dann auf die eigentlich korrekte alte Auftragsnummer +3999 rechnet und aus einer vielleicht korrekten Auftragsnummer "3450" eine "7449" macht.

Und auch noch schnell zur Erklärung: Die ganz neuen Aufträge sollen deswegen mit 4000 beginnen, weil laufend Aufträge reinkommen. Es dient mir im Prinzip als Puffer um dann bei der endgültigen Datenübernahme nicht komplett einzufrieren.


Oh man, ich hoffe ihr könnt mir ansatzweise folgen. Wenn nicht, fragt was ihr nicht versteht und einer der vermutlich noch weniger versteht (moi) wird dann versuchen euch mit den nötigen Antworten auf eure Fragen zu versorgen.
Auf jeden Fall jetzt schon mal ein riesen großes Danke :)

Greetz,

AciD

Top-500-Beitragsschreiber
36 Beiträge

Hallo,

ich weiß nicht , ob ich Dein Problem richtig verstanden habe. Ich würde aber nach meinem Verständnis so vorgehen, und zwar so:

- Es sollte eine Liste angelegt werden, sagen wir ConfigListe, welche eine Spalte z.B. IDWert hat. Das Feld hat den Anfangswert 3999.

- Ein Workflow wird bei Neuanlage eines Auftrags ausgelöst. Der Workflow guckt auf die ConfigListe holt dort den aktuellen Wert  IDWert und addiert mit dem ID des neu angelegten Elements (hier des Neuauftrags), schreibt ihn als Auftragsnummer in die neue Datenbank bzw. in die Spalte Auftragsnummer des Neuelements und gleichzeitig in die Spalte IDWert  der ConfigListe (jetzt hat es den neuen Wert 4000)

- Ein Webpart mit einem Dropdownlist ..., die alle Auftragsnummer der alten Datenbank auflistet, und ein Button. Der Anwender wählt eine Auftragsnummer und aktiviert den Button. Der Webpart schaut auf die ConfigListe holt den aktuellen Wert dort und addiert 1 dazu, schreibt genauso wie beim obigen Fall mit dem Workflow. Die Funktionalität des Webparts kann man auch genauso mit einem Workflow realisieren. Danach wird er für den Workflow mit den neuen Aufträgen entfernt.

Ich würde zuerst ohne den Workflow nur die alten Aufträge in die vorgesehene Liste importieren, danach mit dem Webpart bzw. dem Ersatzworkflow die Auftragsnummer der alten Aufträge aktualisieren und am Schluß mit dem Workflow und den neuen Aufträgen drannehmen.

Hoffentlich hilft es Dir ein wenig beim Problemlösen.

Grüße pk.

Top-500-Beitragsschreiber
46 Beiträge

Hi pk,

danke für den Tip. Eine ähnliche Lösung habe ich bereits ohne Erfolg ausprobiert. Hinzu kommt nämlich, dass ich in meiner Auftragsliste natürlich auch Ansprechpartner bzw. Kontaktpersonen stehen habe.
Dazu habe ich in meiner Liste einmal die Spalte "Ansprechpartner_ID" und einmal eine Spalte "Ansprechpartner". Das ganze dient folgendem Zweck:

Ich gebe einmal die ID des Kontaktes an, drücke auf "Speichern" und ein Teil des Workflows generiert mir anschließend einen Hyperlink. Diesen schreibt er ins Feld "Ansprechpartner" und schon kann ich ganz bequem, ohne große Mühe, auf den Kontakt. Mit nur einem Klick.

Das Problem mit den IDs konnte ich übrigens Lösen. Undzwar folgendermaßen:

Ich habe mir den PriosCounter der Firma Inneo zugelegt. Dieser ermöglicht es, einmal installiert, für eine beliebige Liste einen beliebigen Startwert zu definieren inkl. Nullstellen (z.B. 0001 anstatt einfach nur 1) oder Datumszusätzen (0001.30.07.2009 zum Beispiel).
Man kann ihn auch so einstellen dass er sich Täglich, wöchentlich, monatlich oder jährlich zurückstellt.
Ist auf jeden Fall eine klasse Sache und die Nummern sind nicht manipulierbar.

Das einzige Manko ist, dass die Spalte dann "PriosCounter" heißt und sich nicht umbenennen lässt. Ist allerdings auch schnell gelöst:

Man erstellt einfach eine Spalte, nennt diese wie man möchte und verpasst ihr die Eigenschaft "Berechneter Wert". Als Formel fügt man einfach die Spalte "PriosCounter" ein and that´s it.
Die tatsächliche Spalte "PriosCounter" kann man dann aus sämtlichen Ansichten verschwinden lassen und benutzt dann halt diesen "Spiegel".

Doch wie das oft so ist, hat man ein Problem gelöst tut sich auch schon das nächste auf.

Ich habe eine Liste "Tätigkeitsnachweise". Bzw. eigentlich ist es eher eine Webpartseite, bestehend aus 3 Webparts.
An oberster Stelle ist ein Formularwebpart. In der Mitte haben wir meine schöne Auftrags_DB und an dritter Stelle die tatsächliche Liste mit den Tätigkeitsnachweisen.

Folgende Idee steckt dahinter:

In das Formularfeld gebe ich meine Auftragsnummer ein und drücke auf Enter. Die Auftragsliste erhält in diesem Fall ihren Filter vom Formularfeld. Es werden mir also nur Aufträge angezeigt, die die entsprechende Nummer haben. Gebe ich 3500 ein, zeigt er mir auch nur Auftrag 3500.
Sinnigerweise sind meine Tätigkeiten auch mit den Auftragsnummern versehen, zu denen sie gehören.
Also erhält die Tätigkeitsliste ihren Filter von der Auftragsliste.
Hoffe es ist soweit alles klar. Hat auch alles immer wunderbar funktioniert.

Nummer ins Formularwebpart > Enter > Auftragsliste wird gefiltert > gewünschter Auftrag wird angezeigt > ein Klick auf den Radiobutten vor dem Auftrag > Tätigkeiten werden gefiltert

Und schon sehe ich nur das, was ich auch wirklich sehen will. Nur, seitdem ich jetzt den Counter drin habe, will das ganze einfach nicht mehr so ganz reibungslos funktionieren.
Die Aufträge kann ich nach wie vor über das Formularwebpart filtern. Aber die Tätigkeiten nicht. Sobald ich versuche diese zu filtern, wird mir einfach NICHTS angezeigt. Ich glaube ich lad´ mal eben ´nen Screenshot hoch.

Kann das etwas damit zu tun haben, dass man irgendwie berechnete Spalten nicht Filtern kann? Bin gerade total planlos. Na, wie dem auch sei:
Ich wünsche dann mal einen schönen Feierabend in die Runde und bedanke mich für eure Mühe :)
Mit bestem Gruß,

AciD

Greetz,

AciD

Top-500-Beitragsschreiber
46 Beiträge

Tag auch,

hat jemand von euch schon Erfahrungen mit dem "List item filter" von Ton Stegeman gemacht? Habe versucht diesen zu installieren, allerdings hänge ich beim 11. Schritt der Installationsanleitung fest.

Ich finde den Punkt "site collection features" nicht (soll wohl unter "site collection administration" stehen). Ist doch auf deutsch eigentlich die "Websiteverwaltung" und dann die "Website features", oder?

Hier die Links dazu:

An overview of the features of the List Item Filter webpart v1.0

Content by Type and Filter Web Parts v1.22 (Install Datei und PDF-Anleitung)

Greetz,

AciD

Top-10-Beitragsschreiber
18.849 Beiträge

AciDRaiN:
Ich finde den Punkt "site collection features" nicht

Gehe im Rootweb einer SiteCollection auf Websiteaktionen -> Websiteeinstellungen und in der rechten Spalte findest Du "Features der Websitesammlung".

Viele Grüße
Andi
af @ evocom de
Blog
Top-500-Beitragsschreiber
46 Beiträge

Also war ich da doch richtig...
Dort sehe ich bei mir nur, dass die "Teamzusammenarbeitslisten" aktiv sind. Naja, werde ich halt den Filter mal deinstallieren und wieder neu installieren. Dennoch, vielen Dank für den Hinweis. Der hat mir schon mal einiges an Ungewissheit genommen ;)

 Nachtrag 1: Neuinstallation hat erst mal nichts gebracht... Ich bleib´ am Ball.

 Nachtrag 2: Werde jetzt mal schauen ob ein erneutes runterladen (vielleicht gibt´s ja eine neue Version) und installieren das Problem evtl. beheben kann.

 Nachtrag 3: Okay, der Filter ist jetzt aktiviert. Im Prinzip war der Tip mit dem Rootweb schon richtig, es hing nur an den Bezeichnungen (für mich jedenfalls).
 Alsooooo, ab in die Zentraldaministration, dann auf Websiteaktionen > Websitesammlungsverwaltung > Websiteauflistungsfeatures und dort lässt sich das Feature dann aktivieren.

Jetzt wird experimentiert ^^ Ob es und wie es funktioniert werde ich dann auch posten.

Nachtrag 4: Man muss über die Rechte eines Websitesammlungsadministrators verfügen, um die Installierten Webparts auch verwenden zu können. (War zumindest bei mir der Fall). Nachdem ich den Filter aktiviert habe, habe ich ihn nämlich trotzdem nicht gleich einsetzen können.
Aufgrund fehlender Rechte wurden mir die Webparts erst gar nicht angezeigt. Also, Augen auf.

Nachtrag 5: Scheinbar funktionieren die Filter-Webparts nicht auf jeder x-beliebigen Liste. Wäre ja auch zu schön gewesen. Alles was ich zu diesem Zeitpunkt sagen kann ist: Manchmal funktioniert er, und manchmal eben nicht. Warum? Das weiß ich noch nicht. Zwei Theorien habe ich.

1. Die Filter-Webparts haben "Schwierigkeiten" mit unseren deutschen Umlauten. Eine Liste heißt zwar meinetwegen "Aufträge", in der URL steht aber dann "Auftrge". War mein erster Gedanke. Auch wenn ich mir absolut nicht vorstellen kann, dass es wirklich daran liegen könnte.

2. Die Filter-Webparts sind nur auf SP-Standard-Webparts anwendbar und kommen mit benutzerdefinierten Listen nicht zurecht.

3. Ich mache irgendwas falsch. Wobei ich den Filter auf jeder Liste auf die gleiche Art und Weise integriere. Wie gesagt, auf einigen Listen geht er, auf anderen nicht.

Nachtrag 6: Wir haben nun herausgefunden dass es doch an den deutschen Umlauten gelegen hat. Schnell zur Erklärung:

Ist das FilterWebPart aktiv und man muss die (relative) Adresse zur Liste angeben, sollte man beachten, dass SharePoint, wie unter Nachtrag 5, Punkt 1 beschrieben, die Umlaute weglässt. Das FilterWebPart "verlangt" allerdings nach diesen. Das bedeutet für uns also, selbst wenn in der Url - bleiben wir mal bei meinem Beispiel "Aufträge" - der Umlaut weggelassen wird, muss dieser von uns manuell wieder eingefügt werden.
Lautet die Url also "/site/lists/auftrge" machen wir ein "/site/lists/aufträge" draus, und schon funktioniert dieses Webpart überall wo man es haben möchte.

Jetzt muss ich nur noch ausknobeln ob man mit diesem WebPart auch nach DropDown-Feldern filtern kann. Nach berechneten kann es ja. So long ;)

Nachtrag 7: Nein, kann man nicht.

Greetz,

AciD

Top-500-Beitragsschreiber
36 Beiträge

Hallo,

ich habe das Gefühl, dass Du mit sharepoint designer arbeitest. Falls es der Fall sein sollte, versuche es mit VS (Programmierung) das Problem zu lösen. Es ist viel flexibler und kann viel viel mehr als nur mit Sharepoint Designer.

Egal wie es ist, ein schönes Wochenende und

viele Grüße - pk

Top-500-Beitragsschreiber
46 Beiträge

Danke für den Tip.

Mich beschleicht auch immer häufiger das Gefühl, als würde ich an Visual Studio nicht vorbeikommen. Das Problem, dass ich bei der ganzen Sache habe ist einfach, dass mir der SharePoint Designer schon nicht leicht viel und ich lange gebraucht habe, bis ich mit diesem HALBWEGS umgehen konnte.
Aber wenn es nicht anders geht, geht´s halt nicht anders.

Sämtliche Probleme diesen Thread betreffend sind nun eigentlich gelöst. Da möchte ich mich an dieser Stelle noch mal bei allen bedanken, die mir mit ihren Tips weitergeholfen haben.
Also, dankeschön und bis zum nächsten Thread dann.
Mit bestem Gruß,

AciD

Greetz,

AciD

Seite 1 von 1 (13 Elemente) | RSS