On 03/16/2018 03:39 PM, Huber, Jean-Christophe wrote: > Dear GLPK-team, > > > > I’m using GLPK64 from VBA/Excel and wanted to define scaling options. > > In the given example for VBA (file glpk.bas in the GLPK64 zip file from > SourceForge), there is no declaration for the scaling function. > > > > I tried adding manually as defined below: > > > > /#if win64 then/ > > /Declare PtrSafe Sub glp_scale_prob Lib "C:\GLP_DLL\glpk_4_64.dll" > (ByVal lp As LongPtr, ByVal flags As Long)/ > > /#else/ > > /Declare PtrSafe Sub glp_scale_prob Lib > "C:\GLP_DLL\glpk_4_64_stdcall.dll" (ByVal lp As LongPtr, ByVal flags As > Long)/
Your definition looks ok. Could you, please, send me a Basic module (*.bas file) demonstrating the problem. In the 4.65 release of GLPK for Windows I will add the missing scaling function definitions for VBA. ' scaling options: Public Const GLP_SF_GM = &H1 ' perform geometric mean scaling Public Const GLP_SF_EQ = &H10 ' perform equilibration scaling Public Const GLP_SF_2N = &H20 ' round scale factors to power of two Public Const GLP_SF_SKIP = &H40 ' skip if problem is well scaled Public Const GLP_SF_AUTO = &H80 ' choose scaling options automatically ' Problem scaling routines ' set (change) row scale factor Declare PtrSafe Sub glp_set_rii(ByVal lp As LongPtr, ByVal i As Long, ByVal rii As Double) ' set (change) column factor Declare PtrSafe Sub glp_set_sjj(ByVal lp As LongPtr, ByVal j As Long, ByVal sjj As Double) ' retrieve row scale factor Declare PtrSafe Function glp_get_rii(ByVal lp As LongPtr, ByVal i As Long) As Double ' retrieve column factor Declare PtrSafe Function glp_get_sjj(ByVal lp As LongPtr, ByVal j As Long) As Double ' scale problem data Declare PtrSafe Sub glp_scale_prob(ByVal lp As LongPtr, ByVal flags As Long) ' unscale problem data Declare PtrSafe Sub glp_unscale_prob(ByVal lp As LongPtr) Best regards Heinrich Schuchardt _______________________________________________ Help-glpk mailing list Help-glpk@gnu.org https://lists.gnu.org/mailman/listinfo/help-glpk