Excel VBA für SharePoint: Daten automatisiert anhängen
Schritt-für-Schritt-Anleitung
Um eine Excel-Datei auf SharePoint zu ändern und Daten automatisiert anzuhängen, befolge diese Schritte:
-
VBA-Editor öffnen: Drücke ALT + F11
, um den VBA-Editor in Excel zu öffnen.
-
Modul erstellen: Klicke mit der rechten Maustaste auf "VBAProject" und wähle „Einfügen“ > „Modul“.
-
Code einfügen: Füge den folgenden VBA-Code in das Modul ein:
Sub kopieren()
Dim lngEinfZeile As Long
Dim wkbZiel As Workbook
Dim strDatei As String
' Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
' Zielarbeitsmappe öffnen - Pfad anpassen
strDatei = "https://anywhere.sharepoint.com/sites/mysite/Shared Documents/Spielwiese/Anlagenbesetzung_fortlaufend.xlsx"
Application.DisplayAlerts = False
' ActiveWorkbook.LockServerFile verwenden
Set wbkZiel = Workbooks.Open(strDatei, , False)
ActiveWorkbook.LockServerFile
' Letzte beschriebene Zeile in Zielarbeitsmappe in Spalte A feststellen
With wbkZiel.Worksheets("Besetzung")
lngEinfZeile = .Cells(Rows.Count, 1).End(xlUp).Row + 1
End With
' Daten anhängen (hier Code hinzufügen)
' Arbeitsmappe schließen und speichern
wbkZiel.Close SaveChanges:=True
' Bildschirmaktualisierung wieder einschalten
Application.ScreenUpdating = True
End Sub
-
Anpassen der URL: Stelle sicher, dass die SharePoint-URL korrekt ist und der :x:/r/
Teil entfernt wird, wie Yal in seinem Beitrag erwähnt hat.
-
Makro ausführen: Schließe den VBA-Editor und führe das Makro über ALT + F8
aus.
Häufige Fehler und Lösungen
- Fehler: Schreibgeschützt geöffnet: Stelle sicher, dass du den
:x:/r/
Teil der URL entfernst und ActiveWorkbook.LockServerFile
verwendest, um die Datei zu sperren.
- Fehler beim Öffnen der Datei: Überprüfe, ob du die richtigen Berechtigungen auf SharePoint hast und die URL korrekt ist.
- Daten werden nicht angehängt: Achte darauf, dass du im Code den Abschnitt hinzufügst, wo die Daten tatsächlich angehängt werden.
Alternative Methoden
Wenn du mit VBA nicht vertraut bist, gibt es auch andere Möglichkeiten, Daten in eine SharePoint-Datei zu integrieren, wie:
- Power Automate: Nutze Power Automate, um Prozesse zu automatisieren und Daten zwischen Excel und SharePoint zu übertragen.
- SharePoint Excel Integration: Verwende die integrierten Funktionen von Excel, um direkt mit SharePoint-Daten zu arbeiten, ohne VBA.
Praktische Beispiele
Hier ist ein einfaches Beispiel, wie du Daten aus einem anderen Arbeitsblatt an die SharePoint-Datei anhängen kannst:
' Beispiel für das Anhängen von Daten
wbkZiel.Worksheets("Besetzung").Cells(lngEinfZeile, 1).Value = ThisWorkbook.Worksheets("Daten").Cells(1, 1).Value
In diesem Beispiel wird der Wert aus Zelle A1 des aktuellen Arbeitsblatts in die nächstfreie Zeile der "Besetzung" Arbeitsmappe auf SharePoint geschrieben.
Tipps für Profis
- Excel Makros in SharePoint ausführen: Achte darauf, dass deine Excel-Datei im richtigen Format (z.B. .xlsm) gespeichert ist, um Makros ausführen zu können.
- Debugging: Verwende
Debug.Print
im Code, um Werte während der Ausführung zu überprüfen.
- Fehlermeldungen abfangen: Implementiere Error-Handling in deinem VBA-Code, um mögliche Laufzeitfehler abzufangen.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass die Datei nicht schreibgeschützt geöffnet wird?
Stelle sicher, dass du die URL richtig anpasst und ActiveWorkbook.LockServerFile
verwendest.
2. Kann ich VBA in SharePoint Online verwenden?
Ja, du kannst VBA in Excel für SharePoint Online verwenden, solange du die richtigen Berechtigungen hast.
3. Wie kann ich die URL in meinem VBA-Code anpassen?
Entferne den :x:/r/
Teil aus der SharePoint-URL und ersetze ihn durch den richtigen Pfad.