10.08.2018, 10:17
Hallo,
der Titel klingt nach einem simplen Problem doch es scheint mir komplizierter.
Ich benutzte eine Arbeitsdatei die mit anderen Excel Dateien auf einem Server vernuepft ist.
Es gibt zwei Haupt Makros mit denen ich arbeite (sieh weiter unten)
Makro 4 oeffnet alle Dateien auf dem Server und die Daten zu meiner Arbeitsdatei werden aktualisiert.
Makro X ergaenzt bei jedem neuen Kalender - / Reporting Tag eine neue Spalte mit den gleichen Formeln aus der vorigen Spalte (copy paste)
Makro 4 laeuft ohne Probleme.
Lasse ich jedoch nach Makro 4 das Makro X laufen, will Excel immer die Quelldateien oeffnen. Das soll Excel aber nicht tun, denn es soll lediglich eine Spalte ergaenzt werden. Fuer das Update der Daten aus den vernuepften Dateien habe ich ja Makro 4.
Ich habe schon so viel rumprobiert. Ich habe in Makro X schon calculation Manual eingebaut, oder ActiveWorkbook.Updatelinks=xlupdatelinksNever, es aendert nichts..Wenn man Makro 4 zuerst laufen laesst und danach mal Makro X, will er dann immer die Quelldatei oeffnen. Das passiert nach dem Schritt - also wenn der die Formeln (mit Verknuepfung zur Quelldatei) pasted.
Das Verrueckte ist, wenn das Makro X dann die Quelldatei oeffnen will und nach dem Passwort fragt, dann klicke ich "abbrechen". Das Makro laeuft dann bis zum Ende durch. Starte ich dann wieder Makro X, laeuft es ohne Problem beim zweiten Mal (ohne versuch die Quelldatei zu oeffnen). Sobald ich aber mal wieder Makro 4 laufen lasse und dann Makro X danach, geht der Mist wieder von vorne los.
Makro 4
Makro X
Falls jemand eine Idee hat?
Vielen Dank im Voraus.
der Titel klingt nach einem simplen Problem doch es scheint mir komplizierter.
Ich benutzte eine Arbeitsdatei die mit anderen Excel Dateien auf einem Server vernuepft ist.
Es gibt zwei Haupt Makros mit denen ich arbeite (sieh weiter unten)
Makro 4 oeffnet alle Dateien auf dem Server und die Daten zu meiner Arbeitsdatei werden aktualisiert.
Makro X ergaenzt bei jedem neuen Kalender - / Reporting Tag eine neue Spalte mit den gleichen Formeln aus der vorigen Spalte (copy paste)
Makro 4 laeuft ohne Probleme.
Lasse ich jedoch nach Makro 4 das Makro X laufen, will Excel immer die Quelldateien oeffnen. Das soll Excel aber nicht tun, denn es soll lediglich eine Spalte ergaenzt werden. Fuer das Update der Daten aus den vernuepften Dateien habe ich ja Makro 4.
Ich habe schon so viel rumprobiert. Ich habe in Makro X schon calculation Manual eingebaut, oder ActiveWorkbook.Updatelinks=xlupdatelinksNever, es aendert nichts..Wenn man Makro 4 zuerst laufen laesst und danach mal Makro X, will er dann immer die Quelldatei oeffnen. Das passiert nach dem Schritt - also wenn der die Formeln (mit Verknuepfung zur Quelldatei) pasted.
Code:
Columns("D:D").Select
ActiveSheet.Paste
Das Verrueckte ist, wenn das Makro X dann die Quelldatei oeffnen will und nach dem Passwort fragt, dann klicke ich "abbrechen". Das Makro laeuft dann bis zum Ende durch. Starte ich dann wieder Makro X, laeuft es ohne Problem beim zweiten Mal (ohne versuch die Quelldatei zu oeffnen). Sobald ich aber mal wieder Makro 4 laufen lasse und dann Makro X danach, geht der Mist wieder von vorne los.
Makro 4
Code:
Sub Makro4()
Dim strVerzeichnis As String
Dim strDatei As String
Dim StrTyp As String
strVerzeichnis = "\\Companycifs\Company_eu\\corporate treasury\Daily Reporting Receipts & Disbursement_TestNotYetInUse\"
StrTyp = "*.xlsm"
strDatei = Dir(strVerzeichnis & StrTyp)
Do While strDatei <> ""
Workbooks.Open Filename:=strVerzeichnis & strDatei, ReadOnly:=True, Password:=HolePasswort(strDatei)
ThisWorkbook.ChangeLink Name:=strDatei, NewName:=strDatei, Type:=xlExcelLinks
ActiveWorkbook.Close False
strDatei = Dir
Loop
Application.Calculation = xlManual
End Sub
Private Function HolePasswort(strDatei As String) As String
Select Case strDatei
Case "ES_Masterfile.xlsm": HolePasswort = "Navarra1512"
Case "BEL_Masterfile.xlsm": HolePasswort = "BellaRussie"
End Select
End Function
Makro X
Code:
Sub MakroX()
'
' MakroX Makro
'
' Tastenkombination: Strg+Umschalt+Z
'
Application.Calculation = xlManual
Columns("D:D").Select
Sheets(Array("Masterfile_TotalEurope", "BE", "NL", "AT", "DE", "FR", "DB", "ES", "PT", _
"PL", "BEL", "IT", "HY", "UK", "RU", "NORDICS")).Select
Sheets("Masterfile_TotalEurope").Activate
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Columns("C:C").Select
Selection.Copy
Columns("D:D").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=36
Range("D47:D62").Select
Application.CutCopyMode = False
Selection.Copy
Range("D47").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Sheets("Masterfile_TotalEurope").Select
ActiveWorkbook.Save
End Sub
Falls jemand eine Idee hat?
Vielen Dank im Voraus.