"itgenuty009" Fehler beim Synchronisieren meines Cashflow-Modells

373
Daniëlle Snoeijer

Beim Synchronisieren meines Cashflow-Modells erhalte ich folgende Fehlermeldung:

De feiten kunnen niet in Excel cellen geplaatst worden door fouten in de formules. Bijvoorbeeld de expressie '=SUMIF(BALTable[ID], "=" & [ID], BALTable[Close])' veroorzaakt een fout in cel AP!G7.  Corrigeer deze fout eerst en probeer het opnieuw.  U moet de Engelse versie gebruiken van Excel formules zoals 'SUM' in plaats van het Nederlandse 'SOM'. Bovendien moet u een komma ',' gebruiken als scheider voor functieparameters in plaats van de puntkomma ';'. 

Übersetzt ins Englische:

The facts can not be put into Excel cells due to errors in the formulas.  For instance, the expression '=SUMIF(BALTable[ID], "=" & [ID], BALTable[Close])' causes an error at cell AP!G7.  Please fix this error first and try again.  You must use the English versions of Excel formulas such as 'SUM' instead of the Dutch 'SOM'.  Also, you must use a comma ',' as separator for function arguments instead of a semicolon ';'. 

Full Error Stack:

Type: System.Runtime.InteropServices.COMException  bij System.Dynamic.ComRuntimeHelpers.CheckThrowException(Int32 hresult, ExcepInfo& excepInfo, UInt32 argErr, String message) bij CallSite.Target(Closure, CallSite, ComObject, Object ) bij CallSite.Target(Closure, CallSite, Object, Object ) bij Invantive.Producer.Control.Utility.SetExcelRangeValues(ModelCache modelCache, Workbook workbook, Range range, Object[,] values) in File169:regel 5290Type: Invantive.Configuration.ValidationException bij Invantive.Configuration.ValidationException..ctor(String errorCode, String errorMessage, String kindRequest, String localStackTrace, String nk, Exception innerException) bij Invantive.Producer.Control.Utility.SetExcelRangeValues(ModelCache modelCache, Workbook workbook, Range range, Object[,] values) bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownloadRows(SystemWorkingContext context, iea_blocks_v block, Int32 numberOfRows, Int32 fakeRowCount, Int32 numberOfColumns, ResultSet resultTable, Decimal step, Int32 currentBlock, Int32 idColumnNumber, Int32 transactionColumnNumber, Point3d dataStartPoint, Dictionary`2 additionalSelectFields, Dictionary`2 fieldsByNameDictionary, Dictionary`2 columnBeginAndEndPoints, Dictionary`2 blocksByCodeDictionary, List`1 fields, Dictionary`2 blockDimensions, ConcurrentBag`1 expressionFieldForCheckPendingChange, Cube innerBorder) bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownload(DoWorkEventArgs e) bij Invantive.Producer.Control.SyncToDatabaseForm.syncBackGroundWorker_DoWork(Object sender, DoWorkEventArgs e) bij System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e) bij System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument) bij System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs) bij System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink) bij System.Runtime.Remoting.Proxies.AgileAsyncWorkerItem.ThreadPoolCallBack(Object o) bij System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state) bij System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) bij System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() bij System.Threading.ThreadPoolWorkQueue.Dispatch() bij System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() bij Invantive.Producer.Control.Utility.SetExcelRangeValues(ModelCache modelCache, Workbook workbook, Range range, Object[,] values) in File169:regel 5352 bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownloadRows(SystemWorkingContext context, iea_blocks_v block, Int32 numberOfRows, Int32 fakeRowCount, Int32 numberOfColumns, ResultSet resultTable, Decimal step, Int32 currentBlock, Int32 idColumnNumber, Int32 transactionColumnNumber, Point3d dataStartPoint, Dictionary`2 additionalSelectFields, Dictionary`2 fieldsByNameDictionary, Dictionary`2 columnBeginAndEndPoints, Dictionary`2 blocksByCodeDictionary, List`1 fields, Dictionary`2 blockDimensions, ConcurrentBag`1 expressionFieldForCheckPendingChange, Cube innerBorder) in File170:regel 3466 bij Invantive.Producer.Control.SyncToDatabaseForm.SyncDownload(DoWorkEventArgs e) in File170:regel 2332 

Wie kann ich das beheben?

3
Willkommen bei SuperUser! Die Fehlermeldung ist auf Niederländisch, aber ich verstehe, dass es einen Fehler mit der Formel `= SUMIF (BALTable [ID]," = "& [ID], BALTable [Close])` gibt. Ich nehme an, dass "BALTable" eine Excel-Tabelle ist und "ID" eine Spalte dort ist? Patrick Hofman vor 7 Jahren 0
Bitte übersetzen Sie mindestens die Fehlermeldung ins Englische. Bitte erklären Sie auch die dort beteiligten Objekte. Da es derzeit nicht möglich ist, Ihnen eine korrekte Antwort zu geben. Máté Juhász vor 7 Jahren 0

1 Antwort auf die Frage

2
Patrick Hofman

Wie Sie der Fehlermeldung entnehmen können, versucht sie, eine Formel zu erstellen, die "ungültig" ist. In diesem Fall bedeutet dies wahrscheinlich, dass die referenzierte Tabelle oder deren Spalten nicht vorhanden sind. Ich nehme an, Sie verwenden eines unserer Demomodelle (ich arbeite für das Unternehmen, das die Software bereitstellt).

Ursache

Am wahrscheinlichsten ist es passiert, dass Sie ein neues Arbeitsblatt irgendwo zwischen vorhandenen Arbeitsblättern erstellt haben. Wie Sie im Modelleditor sehen können, entspricht der Name des Blocks nicht dem Namen des Arbeitsblatts:

Dies führte dazu, dass die Formel fehlschlug, da APkeine Tabelle mit der Spalte IDdarin enthalten ist.

Wie löst man

  1. Die wichtigste Regel ist: Immer neue Blätter am Ende des Modells einfügen. Wenn Sie ein Arbeitsblatt einfügen, testen Sie, ob das Modell noch funktioniert, indem Sie es synchronisieren.

  2. Wenn Sie wirklich ein Blatt in der Mitte einfügen möchten (oder möchten), leeren Sie zunächst das Modell, indem Sie es in einem neuen Modell veröffentlichen (dadurch werden das gesamte Layout und die Daten zurückgesetzt), und fügen Sie dann das Blatt hinzu. Nach der ersten Synchronisierung müssen Sie diesen Schritt erneut durchlaufen.

Ich werde sehen, ob wir einige Überprüfungen durchführen können, um zu verhindern, dass Benutzer das Modell durch versehentliches Einlegen eines Blatts beschädigen.