Results 1 to 2 of 2

Thread: Macro works on Dell but not on IBM with same operating system, and Office v2003!!!

Hybrid View

  1. #1

    Thread Starter
    Junior Member
    Join Date
    Aug 2005
    Posts
    17

    Macro works on Dell but not on IBM with same operating system, and Office v2003!!!

    I cannot figure this one out for the life of me! I tried to run the macro on several Dells and it works fine, but produces a system error that shuts down excel on an IBM Thinkpad computer! I checked the reference libraries, but they are the same on both computers!!! Both Dells and IBMs are running Windows XP with Office 2003. Any ideas on this one?

    Here's the program:
    VB Code:
    1. Sub RUNMC()
    2.  
    3. Application.ScreenUpdating = False
    4. Application.DisplayAlerts = False
    5. Cur_Path = CurDir("C")
    6. On Error GoTo ErrHandler
    7. BrowseF
    8. Windows("Sites.xls").Activate
    9. Sheets("Sheet1").Select
    10. Format_Col
    11. Range("C4").Select
    12. Range(Selection, Selection.End(xlDown)).Select
    13. r = Selection.Count
    14. Range("C3").Select
    15.  
    16. For X = 1 To r
    17.     Windows("Sites.xls").Activate
    18.     ActiveCell.Offset(1, 0).Select
    19.     Memorize_Data
    20.     Fill_App
    21.     Windows("ATCApp.xls").Activate
    22.     SFile
    23. Next X
    24.  
    25. ErrHandler:
    26. If Err.Number = 9 Then
    27. MsgBox "Cannot find file 'Sites.xls'. Please make sure this file is open and has not been renamed."
    28. End If
    29.  
    30. End Sub
    31.  
    32. Private Sub Memorize_Data()
    33.  
    34. For C = 0 To 34
    35.     DataFill(C) = ActiveCell.Offset(0, C)
    36. Next C
    37.  
    38. End Sub
    39.  
    40. Private Sub SFile()
    41.  
    42. F_Name = DataFill(0)
    43. Full_Path = newpath & "\" & F_Name & ".xls"
    44.         ActiveWorkbook.SaveAs Filename:= _
    45.         Full_Path, FileFormat:=xlNormal, _
    46.         Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    47.         False, CreateBackup:=False
    48.         ActiveWorkbook.SaveAs Filename:= _
    49.         Cur_Path & "ATCApp.xls", FileFormat:=xlNormal, _
    50.         Password:="", WriteResPassword:="", ReadOnlyRecommended:= _
    51.         False, CreateBackup:=False
    52. End Sub
    53.  
    54. Private Sub Fill_App()
    55.  
    56. Windows("ATCApp.xls").Activate
    57. Range("J9").Select
    58. ActiveCell.Value = DataFill(6)
    59. Range("J10").Select
    60. ActiveCell.Value = DataFill(0)
    61. Range("B11").Select
    62. ActiveCell.Value = DataFill(23)
    63. Range("B12").Select
    64. ActiveCell.Value = DataFill(24)
    65. Range("E12").Select
    66. ActiveCell.Value = DataFill(25)
    67. Range("I12").Select
    68. ActiveCell.Value = DataFill(26)
    69. Range("K12").Select
    70. ActiveCell.Value = DataFill(27)
    71. Range("B13").Select
    72. ActiveCell.Value = DataFill(1)
    73. Range("E13").Select
    74. ActiveCell.Value = DataFill(2)
    75. Range("C21").Select
    76. ActiveCell.Value = DataFill(28)
    77. Range("F21").Select
    78. ActiveCell.Value = DataFill(29)
    79. Range("L21").Select
    80. ActiveCell.Value = DataFill(30)
    81. Range("C23").Select
    82. ActiveCell.Value = DataFill(31)
    83. Range("F23").Select
    84. ActiveCell.Value = DataFill(32)
    85. Range("L23").Select
    86. ActiveCell.Value = DataFill(33)
    87. Range("D55").Select
    88. ActiveCell.Value = DataFill(9)
    89. Range("D56").Select
    90. ActiveCell.Value = DataFill(8)
    91. Range("D57").Select
    92. ActiveCell.Value = DataFill(19)
    93. Range("D58").Select
    94. ActiveCell.Value = DataFill(20) & "X" & DataFill(21) & "X" & DataFill(22) & " in"
    95. Range("D60").Select
    96. ActiveCell.Value = DataFill(11)
    97. Range("D63").Select
    98. ActiveCell.Value = DataFill(12)
    99. Range("D69").Select
    100. ActiveCell.Value = DataFill(16)
    101.  
    102. Range("D40").Select
    103. ActiveCell.Value = "Axcera"
    104. Range("D41").Select
    105. ActiveCell.Value = "Innovator, LX"
    106. Range("D42").Select
    107. ActiveCell.Value = "Broadcasting"
    108. Range("D43").Select
    109. ActiveCell.Value = "200W"
    110. Range("D44").Select
    111. ActiveCell.Value = "63"
    112. Range("D45").Select
    113. ActiveCell.Value = "N/A"
    114. Range("D46").Select
    115. ActiveCell.Value = "120VAC"
    116. Range("D47").Select
    117. ActiveCell.Value = "N/A"
    118. Range("D40").Select
    119.  
    120.  
    121. If DataFill(13) <> "" Then
    122.  
    123.     Range("D40:D47").Select
    124.     Selection.Copy
    125.     Range("F40").Select
    126.     ActiveSheet.Paste
    127.    
    128.     Range("D51:E69").Select
    129.     Selection.Copy
    130.     Range("F51").Select
    131.     ActiveSheet.Paste
    132.     Range("F63").Select
    133.     ActiveCell.Value = DataFill(13)
    134. Else
    135.     Range("F40").Select
    136.     ActiveCell.FormulaR1C1 = "N/A"
    137.     Range("F41").Select
    138.     ActiveCell.FormulaR1C1 = "N/A"
    139.     Range("F42").Select
    140.     Range("F41").Select
    141.     Selection.Copy
    142.     Range("F42:F47").Select
    143.     ActiveSheet.Paste
    144.     Range("F40:F47").Select
    145.     Selection.Copy
    146.     Range("H40:H47").Select
    147.     ActiveSheet.Paste
    148.     Range("J40:J47").Select
    149.     ActiveSheet.Paste
    150.    
    151.  
    152.     Range("F51").Select
    153.     ActiveCell.FormulaR1C1 = "N/A"
    154.     Range("F52").Select
    155.     ActiveCell.FormulaR1C1 = "N/A"
    156.     Range("F53").Select
    157.     Range("F52").Select
    158.     Selection.Copy
    159.     Range("F53:F69").Select
    160.     ActiveSheet.Paste
    161.     Range("F51:F69").Select
    162.     Selection.Copy
    163.     Range("H51:H69").Select
    164.     ActiveSheet.Paste
    165.     Range("L51:L69").Select
    166.     ActiveSheet.Paste
    167.     GoTo Finished_Sect_Check
    168. End If
    169.  
    170. If DataFill(14) <> "" Then
    171.  
    172.     Range("D40:D47").Select
    173.     Selection.Copy
    174.     Range("H40").Select
    175.     ActiveSheet.Paste
    176.    
    177.     Range("D51:E69").Select
    178.     Selection.Copy
    179.     Range("H51").Select
    180.     ActiveSheet.Paste
    181.     Range("H63").Select
    182.     ActiveCell.Value = DataFill(14)
    183. Else
    184.     Range("H40").Select
    185.     ActiveCell.FormulaR1C1 = "N/A"
    186.     Range("H41").Select
    187.     ActiveCell.FormulaR1C1 = "N/A"
    188.     Range("H42").Select
    189.     Range("H41").Select ' To preserve Cell formatting after input
    190.     Selection.Copy
    191.     Range("H42:H47").Select
    192.     ActiveSheet.Paste
    193.     Range("H40:H47").Select
    194.     Selection.Copy
    195.     Range("J40:J47").Select
    196.     ActiveSheet.Paste
    197.    
    198.  
    199.     Range("H51").Select
    200.     ActiveCell.FormulaR1C1 = "N/A"
    201.     Range("H52").Select
    202.     ActiveCell.FormulaR1C1 = "N/A"
    203.     Range("H53").Select
    204.     Range("H52").Select
    205.     Selection.Copy
    206.     Range("H53:H69").Select
    207.     ActiveSheet.Paste
    208.     Range("H51:H69").Select
    209.     Selection.Copy
    210.     Range("L51:L69").Select
    211.     ActiveSheet.Paste
    212.     GoTo Finished_Sect_Check
    213. End If
    214.  
    215. If DataFill(15) <> "" Then
    216.    
    217.     Range("D40:D47").Select
    218.     Selection.Copy
    219.     Range("J40").Select
    220.     ActiveSheet.Paste
    221.  
    222.     Range("D51:E69").Select
    223.     Selection.Copy
    224.     Range("L51").Select
    225.     ActiveSheet.Paste
    226.     Range("L63").Select
    227.     ActiveCell.Value = DataFill(15)
    228. Else
    229.     Range("J40").Select
    230.     ActiveCell.FormulaR1C1 = "N/A"
    231.     Range("J41").Select
    232.     ActiveCell.FormulaR1C1 = "N/A"
    233.     Range("J42").Select
    234.     Range("J41").Select
    235.     Selection.Copy
    236.     Range("J42:J47").Select
    237.     ActiveSheet.Paste
    238.    
    239.     Range("L51").Select
    240.     ActiveCell.FormulaR1C1 = "N/A"
    241.     Range("L52").Select
    242.     ActiveCell.FormulaR1C1 = "N/A"
    243.     Range("L53").Select
    244.     Range("L52").Select
    245.     Selection.Copy
    246.     Range("L53:L69").Select
    247.     ActiveSheet.Paste
    248. End If
    249.  
    250. Finished_Sect_Check:
    251. Range("A1").Select
    252. Windows("Sites.xls").Activate
    253.  
    254. End Sub
    255.  
    256.  
    257. Private Sub Format_Col()
    258.  
    259. For X = 1 To 3
    260.     Columns("P:P").Select
    261.     Selection.Insert Shift:=xlToRight
    262. Next X
    263.     Columns("O:O").Select
    264.    
    265.     Selection.TextToColumns Destination:=Range("O1"), DataType:=xlDelimited, _
    266.         TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
    267.         Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
    268.         :=",", FieldInfo:=Array(1, 1), TrailingMinusNumbers:=True
    269.        
    270. End Sub
    271.  
    272. Private Sub BrowseF()
    273.  
    274. Dim objShell   As Shell
    275. Dim objFolder  As Folder
    276. Set objShell = New Shell
    277. Set objFolder = objShell.BrowseForFolder(0, "Please select folder for saving ATC Applications:", 0, 0)
    278.     If (Not objFolder Is Nothing) Then
    279.         Dim objFolderItem As FolderItem
    280.         Set objFolderItem = objFolder.Self
    281.         If (Not objFolderItem Is Nothing) Then
    282.             newpath = objFolderItem.Path
    283.         End If
    284.     End If
    285. Set objFolder = Nothing
    286. Set objShell = Nothing
    287.  
    288. End Sub
    Last edited by si_the_geek; Mar 14th, 2006 at 05:32 PM. Reason: added VBCode tags

  2. #2
    Ex-Super Mod RobDog888's Avatar
    Join Date
    Apr 2001
    Location
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™
    Posts
    60,709

    Re: Macro works on Dell but not on IBM with same operating system, and Office v2003!!!

    Whats the exact error message?

    About all I can see right away is a possible issue where your reference to the Shell (Shell32.dll) may be different versions? This is dependant upon the version of IE installed also.

    Without knowing the exact error there is nothing more that I can suggest.
    VB/Office Guru™ (AKA: Gangsta Yoda®)
    I dont answer coding questions via PM. Please post a thread in the appropriate forum.

    Microsoft MVP 2006-2011
    Office Development FAQ (C#, VB.NET, VB 6, VBA)
    Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
    If a post has helped you then Please Rate it!
    Reps & Rating PostsVS.NET on Vista Multiple .NET Framework Versions Office Primary Interop AssembliesVB/Office Guru™ Word SpellChecker™.NETVB/Office Guru™ Word SpellChecker™ VB6VB.NET Attributes Ex.Outlook Global Address ListAPI Viewer utility.NET API Viewer Utility
    System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width