Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Fortran code conversion into Excel VBA

  1. Jul 16, 2012 #1

    I'm currently working on a project that requires me to convert a Fortran code into excel vba.
    There are some problems that I've stumbled into, so itll be great if someone could help out.

    one of it would be on how to convert a COMMON statement in Fortran to Excel VBA ( as in how would the coding be??) the coding is below:

    REAL*8 C2X,C3X
    REAL*8 KR1E,KR2E,M,N
    COMMON /FLSH/ S(2),C(3,2),XK(3)
    + SWC(6), VWC(6), CWC(6), SLW(4), SFC(4),
    + TVC(5), PVC(6), VCO2(5,6),
    + TDC(5), PDC(7), DCO2(5,7),
    + TSC(5), PSC(6), SCO2(5,6),
    + TZC(7),PZC(19), ZCO2(7,19),
    + TBW(9),BWC(15), RHO(9,15)

    Is the SWC and the others after it arrays??

    hope there's someone to help me out here. thanks
  2. jcsd
  3. Jul 17, 2012 #2


    User Avatar
    Homework Helper

    I'd just define them as global variables. Global variables should be described in whatever reference material you are using to learn VBA.
  4. Jul 17, 2012 #3


    Staff: Mentor

    Yes, SWC and the other variables listed after it are arrays, as areS, C, and XK. C is a two-dimensional array, with 3 rows and 2 columns.
  5. Jul 18, 2012 #4

    so if thats the case before the subroutine in vba should i declare it as a GLOBAL file?? where then the arrays will be available to all subroutines in the module.
  6. Jul 18, 2012 #5
    Another doubt that I'm having would be the WRITE statements

    for example:

    IF (PERM.LE.0.0)ICHK=3

    Looking at the fortran code, is the WRITE statement equivalent to writing on file NOT1 and then skipping to line 9600.

    if so can i define line 9600 in VBA as follows:


    (and then put in the required coding into the line)

    hope u guys can help me out.thanks
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook