Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Auslesen aus Datei auf SharePoint

Forumthread: Auslesen aus Datei auf SharePoint

Auslesen aus Datei auf SharePoint
08.12.2021 13:07:50
Florian
Hi Leute,
aktuell lese ich mittels meinem Code Daten aus einer Excel-Datei in eine andere ein. Das ist mein Code.

Sub Uebernahme()
Dim Dateiname
Dim wksQuelldatei As Worksheet, wksZieldatei As Worksheet
Dim rngQuelleBerater As Range, rngZielBerater As Range
Dim rngQuelleMandanten As Range, rngZielMandanten As Range
Dim intZeilenBerater As Integer, intZeilenMandanten As Integer
Dateiname = Application.GetOpenFilename(filefilter:="xlsm-Dateien (*.xlsm), *.*)", Title:="Lizenzdatei auswählen")
If Dateiname = "Falsch" Then
MsgBox "Keine Datei ausgewählt!"
Else
If Dateiname  False Then
Workbooks.Open (Dateiname)
Set wksQuelldatei = ActiveWorkbook.Sheets("Backend")
Set wksZieldatei = ThisWorkbook.Sheets("Backend")
intZeilenBerater = wksQuelldatei.Cells(Rows.Count, 12).End(xlUp).Row
intZeilenMandanten = wksQuelldatei.Cells(Rows.Count, 14).End(xlUp).Row
wksQuelldatei.Range("L2:L" & intZeilenBerater).Copy
wksZieldatei.Range("L2").PasteSpecial xlPasteValues
wksQuelldatei.Range("N2:N" & intZeilenMandanten).Copy
wksZieldatei.Range("N2").PasteSpecial xlPasteValues
End If
wksQuelldatei.Parent.Close False
End If
End Sub
Mittels dieses Codes werde ich ja dann aufgefordert eine Datei als Quelle auswählen. Nun meine Frage:
Kann ich es auch so lösen, das immer aus einer bestimmten Datei ausgelesen wird, die auf dem SharePoint Online liegt? Wichtig ist auch, dass derjenige, der die Daten einlesen will nicht der Nutzer ist der Zugriff auf SharePoint hat. Das könnte ich aber, sofern überhaupt möglich, mit einem speziellen Benutzer lösen, der sich dann per Quellcode authentifiziert.
Versteht ihr was ich will und meine? :D
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Auslesen aus Datei auf SharePoint
08.12.2021 16:01:49
UweD
Hallo
ungetestet...

Sub Uebernahme()
Dim Dateiname
Dim wksQuelldatei As Worksheet, wksZieldatei As Worksheet
Dim rngQuelleBerater As Range, rngZielBerater As Range
Dim rngQuelleMandanten As Range, rngZielMandanten As Range
Dim intZeilenBerater As Integer, intZeilenMandanten As Integer
Dateiname = "https://deine-my.sharepoint.com/personal/Dein Name/Documents/Board/Deine Datei.xlsx"
Workbooks.Open (Dateiname)
Set wksQuelldatei = ActiveWorkbook.Sheets("Backend")
Set wksZieldatei = ThisWorkbook.Sheets("Backend")
intZeilenBerater = wksQuelldatei.Cells(Rows.Count, 12).End(xlUp).Row
intZeilenMandanten = wksQuelldatei.Cells(Rows.Count, 14).End(xlUp).Row
wksQuelldatei.Range("L2:L" & intZeilenBerater).Copy
wksZieldatei.Range("L2").PasteSpecial xlPasteValues
wksQuelldatei.Range("N2:N" & intZeilenMandanten).Copy
wksZieldatei.Range("N2").PasteSpecial xlPasteValues
wksQuelldatei.Parent.Close False
End Sub
LG UweD
Anzeige
;
Anzeige

Infobox / Tutorial

Daten aus Excel-Datei auf SharePoint auslesen


Schritt-für-Schritt-Anleitung

Um Daten aus einer Excel-Datei auf SharePoint auszulesen, kannst du den folgenden VBA-Code verwenden. Dieser Code öffnet eine bestimmte Datei auf SharePoint und kopiert die gewünschten Daten in deine Zieldatei.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub Uebernahme()
    Dim Dateiname As String
    Dim wksQuelldatei As Worksheet, wksZieldatei As Worksheet
    Dim intZeilenBerater As Integer, intZeilenMandanten As Integer

    ' URL zur Excel-Datei auf SharePoint
    Dateiname = "https://deine-my.sharepoint.com/personal/Dein Name/Documents/Board/Deine Datei.xlsx"

    ' Datei öffnen
    Workbooks.Open (Dateiname)

    ' Arbeitsblätter festlegen
    Set wksQuelldatei = ActiveWorkbook.Sheets("Backend")
    Set wksZieldatei = ThisWorkbook.Sheets("Backend")

    ' Zeilen zählen
    intZeilenBerater = wksQuelldatei.Cells(Rows.Count, 12).End(xlUp).Row
    intZeilenMandanten = wksQuelldatei.Cells(Rows.Count, 14).End(xlUp).Row

    ' Daten kopieren
    wksQuelldatei.Range("L2:L" & intZeilenBerater).Copy
    wksZieldatei.Range("L2").PasteSpecial xlPasteValues
    wksQuelldatei.Range("N2:N" & intZeilenMandanten).Copy
    wksZieldatei.Range("N2").PasteSpecial xlPasteValues

    ' Quelldatei schließen
    wksQuelldatei.Parent.Close False
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus, um die Daten zu übertragen.

Häufige Fehler und Lösungen

  • Fehler beim Öffnen der Datei: Stelle sicher, dass der angegebene Link zur SharePoint-Datei korrekt ist und dass du die notwendigen Berechtigungen hast.
  • Daten werden nicht kopiert: Überprüfe, ob die Arbeitsblätter "Backend" in beiden Dateien existieren und dass die entsprechenden Spalten nicht leer sind.
  • VBA läuft nicht: Stelle sicher, dass Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für Trust Center > Makroeinstellungen.

Alternative Methoden

Falls du eine Alternative zur Verwendung von VBA suchst, kannst du auch Power Query verwenden, um Daten aus SharePoint zu importieren:

  1. Gehe zu Daten > Daten abrufen > Aus anderen Quellen > Aus SharePoint-Ordner.
  2. Gib die URL deiner SharePoint-Seite ein und folge den Anweisungen, um die Datei auszuwählen und die Daten zu importieren.

Praktische Beispiele

Hier ist ein praktisches Beispiel für die Verwendung des Codes:

  • Angenommen, du hast eine Excel-Datei auf SharePoint, die Mandantendaten in den Spalten L und N enthält. Du kannst diese Daten in ein anderes Excel-Dokument übertragen, indem du den oben genannten Code anpasst.
  • Ersetze den Link in der Dateiname-Variable durch den Link zu deiner eigenen SharePoint-Datei.

Tipps für Profis

  • Verwende Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
  • Du kannst die Authentifizierung für den Zugriff auf die SharePoint-Datei automatisieren, indem du ein Benutzerkonto mit den entsprechenden Rechten in deinem VBA-Code verwendest.
  • Halte deine Excel-Version auf dem neuesten Stand, um von den neuesten Funktionen und Sicherheitsupdates zu profitieren.

FAQ: Häufige Fragen

1. Kann ich mehrere Dateien gleichzeitig auslesen? Ja, du kannst eine Schleife in deinen VBA-Code einfügen, um mehrere Dateien nacheinander zu öffnen und deren Daten zu kopieren.

2. Was ist, wenn ich keinen Zugriff auf SharePoint habe? In diesem Fall benötigst du einen Benutzer, der die entsprechenden Berechtigungen hat, oder du musst die Daten manuell exportieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige