Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1728to1732
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

In Sharepoint-Datei schreiben

In Sharepoint-Datei schreiben
16.12.2019 13:25:43
Patrick
Hallo zusammen,
ich möchte, per VBA-Skript einen bestimmten Wert in eine bestimmte Zelle in einer Excel-Datei schreiben lassen, welche sich auf einem Sharepoint befindet.
Grundsätzlich funktioniert das Skript schon. Allerdings nur, wenn die Ziel-Datei lokal auf dem PC liegt.
Das ist mein Code:
Public Sub Uebertrag()
Dim obj_wks_ziel As Worksheet
Dim obj_wks_quelle As Worksheet
Dim obj_wkb_ziel As Workbook
Dim obj_wkb_quelle As Workbook
Dim lng_zeile As Long
Dim rng_finden As Range
Set obj_wkb_ziel = Workbooks("https://sharepoint.xx.xxxx.de/sites/DMS/Arbeitsbereich/ _
Freigegebene%20Dokumente/PM%20und%20Service/Datenanalyse/Masterliste_122019.xlsx?web=1")
Set obj_wks_ziel = obj_wkb_ziel.Worksheets("Masterliste_122019")
Set obj_wkb_quelle = ThisWorkbook
Set obj_wks_quelle = obj_wkb_quelle.Worksheets("Tabelle1")
With obj_wks_ziel
Set rng_finden = .Range("A:A").Find(obj_wks_quelle.Range("B1").Value, lookat:=xlWhole)
lng_zeile = rng_finden.Row
.Cells(lng_zeile, 5) = obj_wks_quelle.Range("B4")
End With
Range("B4").ClearContents
End Sub
Wenn ich das Makro ausführe (ausgelöst durch einen Button), makiert er mir die Zeile gelb, in welcher der Sharepoint-Pfad steht.
Kann mir jemand sagen, was ich falsch mache?
Hab ich ggf. falsch deklariert?
Btw: Ich bin VBA Anfänger! Den hier gezeigten Code habe ich nur mit Hilfe dieser Community geschrieben. (Danke nochmal dafür :) )

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: In Sharepoint-Datei schreiben
16.12.2019 13:51:50
fcs
Hallo Patrick,
soweit ich das sehe fehlt zumindest die Open-Anweisung beim Setzen der Sharpoint-Datei
Set obj_wkb_ziel = Workbooks.Open("https://sharepoint.xx.xxxx.de/sites/DMS/" & _
"Arbeitsbereich/Freigegebene%20Dokumente/PM%20und%20Service/Datenanalyse/" _
& "Masterliste_122019.xlsx?web=1")

LG
Franz
AW: In Sharepoint-Datei schreiben
16.12.2019 13:58:39
Patrick
Hallo Franz,
danke dir für die schnelle Antwort.
Hhhmmm…..als im besten Fall soll er die Excel-Datei gar nicht öffnen sondern nur einen Wert in eine bestimmte Zelle dieser Datei eintragen.
Ich habe die Open-Anweisung mal umgesetzt.
Jetzt öffnet er die Excel-Datei, aber Werte werden nicht eingetragen.
Also wie gesagt: Am besten soll die Excel auf dem SharePoint gar nicht geöffnet werden.
Anzeige
AW: In Sharepoint-Datei schreiben
16.12.2019 14:30:41
fcs
Hallo Patick,
ohne öffnen der Datei wird es schwierig - ist wie Waschen aber mach mich nicht nass.
Mann kann aber die Bildschirmaktualisierung vorübergehend deaktivieren und die Datei sofort nach der Übertragung des Wertes wieder schliessen.
Problem "Es wird kein Wert übertragen":
Ist denn in Zelle B4 des Quelltabellenblatts auch ein Wert vorhanden?
Zusätzlich sollte man prüfen, ob die Zeile mit dem Suchwert auch gefunden wurde.
LG
Franz
Public Sub Uebertrag()
Dim obj_wks_ziel As Worksheet
Dim obj_wks_quelle As Worksheet
Dim obj_wkb_ziel As Workbook
Dim obj_wkb_quelle As Workbook
Dim lng_zeile As Long
Dim rng_finden As Range
Application.ScreenUpdating = False
Set obj_wkb_ziel = Workbooks.Open("https://sharepoint.xx.xxxx.de/sites/DMS/" & _
"Arbeitsbereich/Freigegebene%20Dokumente/PM%20und%20Service/Datenanalyse/" _
& "Masterliste_122019.xlsx?web=1")
Set obj_wks_ziel = obj_wkb_ziel.Worksheets("Masterliste_122019")
Set obj_wkb_quelle = ThisWorkbook
Set obj_wks_quelle = obj_wkb_quelle.Worksheets("Tabelle1")
With obj_wks_ziel
Set rng_finden = .Range("A:A").Find(obj_wks_quelle.Range("B1").Value, lookat:=xlWhole)
If rng_finden Is Nothing Then
'do nothing
MsgBox "Wert """ & obj_wks_quelle.Range("B1").Value & """ nicht gefunden!", vbOKOnly
Else
lng_zeile = rng_finden.Row
.Cells(lng_zeile, 5) = obj_wks_quelle.Range("B4")
End If
End With
obj_wks_quelle.Range("B4").ClearContents '? Löschen im Quellblatt oder Zielblatt ?
'Zieldatei speichen und schliessen
obj_wkb_ziel.Close Savechanges:=True
Application.ScreenUpdating = True
End Sub

Anzeige
AW: In Sharepoint-Datei schreiben
16.12.2019 15:16:01
Patrick
Hi Franz,
wie würde das dann aussehen mit der Deaktivierung der Bildschirmaktualsierung?
Und wird dann trotzdem der eingetragene Wert in der Zieldatei gespeichert?
Problem "Es wird kein Wert übertragen":
Hat sich erledigt - ich hatte falsche Zellen angegeben im Code.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige