+ Reply to Thread
Results 1 to 2 of 2

excel macro running on machine, but not on other machine. Language setting?

Hybrid View

  1. #1
    Registered User
    Join Date
    06-03-2013
    Location
    brussels
    MS-Off Ver
    Excel 2007
    Posts
    94

    excel macro running on machine, but not on other machine. Language setting?

    I run following code on my machine, which runs perfectly. Although an another machine i get following error:

    Runtime error 1004 - Excel cannot insert the sheets into the destination workbook, because it contains fewer rows and columns than the source workbook.

    can someone help out? has this to do with language settings of pc/excel???


    Here's my code

    Private Sub CommandButton10_Click()
    
    Dim workbookTarget As Workbook
    Dim MappingData As Worksheet
    Dim importWB As Workbook
    Dim xlsname
    Dim csvName
    Dim sheetname As String
    Dim suggest_sheet_name As String
    Dim cl As Range
    Dim fileName As String
    Dim MaxCols As Integer
    
    
    ' save as csv Dim wbkExport As Workbook
    ' save as csv Dim shtToExport As Worksheet
    
    
        If Not IsNull(ListBox1.Value) Then
            Set workbookTarget = Application.Workbooks(ListBox1.Value)
           ' toolWB.Worksheets("Start").Cells(17, 3).Value = ListBox1.Value
            
          
            
           toolWB.Sheets("FlatReportTemplate").Copy after:=workbookTarget.Sheets(workbookTarget.Sheets.Count)
          
        
           workbookTarget.Colors = toolWB.Colors
            
        
            sheetname = InputBox("Enter sheetname :", sheetname, suggest_sheet_name)
            For Each sht In workbookTarget.Sheets
                Debug.Print sht.CodeName
            Next
            
            If sheetname <> "" Then
                workbookTarget.Sheets("FlatReportTemplate").Name = sheetname
            ElseIf suggest_sheet_name <> "" Then
                workbookTarget.Sheets("FlatReportTemplate").Name = suggest_sheet_name
            Else
                workbookTarget.Sheets("FlatReportTemplate").Name = "RenameSheet"
            End If
            
        Else
            Unload Me
        End If
        
        
    For Each ws In workbookTarget.Worksheets
     
    'Step 3: Check each worksheet name
        If ws.Name <> workbookTarget.ActiveSheet.Name Then
     
    'Step 4: Turn off warnings and delete
        Application.DisplayAlerts = False
        ws.Delete
        Application.DisplayAlerts = True
        End If
    Next ws
        
        
    'copy data into new/existing workbook
        With toolWB.Sheets("MappingData")
    LastRowA = .Range("A" & .Rows.Count).End(xlUp).Row
    
    
    End With
    
    toolWB.Sheets("MappingData").Range("AI2:AI" & LastRowA).EntireColumn.AutoFit
    'toolWB.Sheets("MappingData").Range("AI2:AI" & LastRowA).NumberFormat = "'#"
    toolWB.Sheets("MappingData").Range("AI2:AI" & LastRowA).NumberFormat = "@"
    toolWB.Sheets("MappingData").Range("AI2:AI" & LastRowA).ColumnWidth = 50
       
           
        
        toolWB.Sheets("MappingData").Range("C2:C" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("A2:A" & LastRowA)
        toolWB.Sheets("MappingData").Range("E2:E" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("B2:B" & LastRowA)
        toolWB.Sheets("MappingData").Range("F2:F" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("C2:C" & LastRowA)
        toolWB.Sheets("MappingData").Range("H2:H" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("D2:D" & LastRowA)
        toolWB.Sheets("MappingData").Range("H2:H" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("E2:E" & LastRowA)
        toolWB.Sheets("MappingData").Range("K2:K" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("F2:F" & LastRowA)
        toolWB.Sheets("MappingData").Range("J2:J" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("G2:G" & LastRowA)
        toolWB.Sheets("MappingData").Range("AJ2:AJ" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("H2:H" & LastRowA)
        toolWB.Sheets("MappingData").Range("Q2:Q" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("I2:I" & LastRowA)
        toolWB.Sheets("MappingData").Range("AD2:AD" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("J2:J" & LastRowA)
        toolWB.Sheets("MappingData").Range("S2:S" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("K2:K" & LastRowA)
        toolWB.Sheets("MappingData").Range("U2:U" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("L2:L" & LastRowA)
        toolWB.Sheets("MappingData").Range("V2:V" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("M2:M" & LastRowA)
        toolWB.Sheets("MappingData").Range("Y2:Y" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("N2:N" & LastRowA)
        toolWB.Sheets("MappingData").Range("Z2:Z" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("O2:O" & LastRowA)
        toolWB.Sheets("MappingData").Range("AG2:AG" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("P2:P" & LastRowA)
        toolWB.Sheets("MappingData").Range("AH2:AH" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("Q2:Q" & LastRowA)
        toolWB.Sheets("MappingData").Range("AA2:AA" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("R2:R" & LastRowA)
        toolWB.Sheets("MappingData").Range("AI2:AI" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("S2:S" & LastRowA)
        toolWB.Sheets("MappingData").Range("W2:W" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("T2:T" & LastRowA)
        toolWB.Sheets("MappingData").Range("X2:X" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("U2:U" & LastRowA)
        toolWB.Sheets("MappingData").Range("AC2:AC" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("V2:V" & LastRowA)
        toolWB.Sheets("MappingData").Range("AU2:AU" & LastRowA).Copy Destination:=workbookTarget.Sheets(sheetname).Range("W2:W" & LastRowA)
    
    ActiveSheet.Range("S2:S" & LastRowA).EntireColumn.AutoFit
    'ActiveSheet.Range("S2:S" & LastRowA).NumberFormat = "'#"
    ActiveSheet.Range("S2:S" & LastRowA).NumberFormat = "@"
    ActiveSheet.Range("S2:S" & LastRowA).ColumnWidth = 50
        
        
        
    ActiveSheet.UsedRange.Replace what:=",", replacement:=" -", Lookat:=xlPart
         
        For Each cl In ActiveSheet.UsedRange
            cl.Value = Application.Clean(cl.Value)
        Next
    
    Rows(1).EntireRow.Delete
    
    'Option Explicit
    
    ' Save as XLSX
    
    xlsname = Application.GetSaveAsFilename & "xlsx"
    
    Application.DisplayAlerts = False
    Application.DisplayAlerts = True
    
    ActiveWorkbook.SaveAs fileName:=xlsname, FileFormat:=xlOpenXMLWorkbook, ConflictResolution:=xlLocalSessionChanges
    
    ActiveWorkbook.Save
    
    'Save as CSV
    
    'ActiveWorkbook.SaveAs fileName:=csvName, FileFormat:=42, ConflictResolution:=xlLocalSessionChanges
    Set wkb = ActiveSheet
    
    'csvName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
    
    fileName1 = Left(xlsname, InStr(1, xlsname, ".")) & "csv" ' ("", "CSV File (*.csv), *.csv")
    
    If fileName1 = "False" Then
            End
        End If
    
        Const adTypeText = 2
        Const adSaveCreateOverWrite = 2
        Const adTypeBinary = 1
    
        Dim BinaryStream
        Dim BinaryStreamNoBOM
        Set BinaryStream = CreateObject("ADODB.Stream")
        Set BinaryStreamNoBOM = CreateObject("ADODB.Stream")
        BinaryStream.Charset = "UTF-8"
        BinaryStream.Type = adTypeText
        BinaryStream.Open
    
        For r = 1 To wkb.UsedRange.Rows.Count
            S = ""
            sep = ""
    
            For c = 1 To wkb.UsedRange.Columns.Count
                S = S + sep
                sep = ","
                If Not IsEmpty(wkb.Cells(r, c).Value) Then
                    S = S & "" & wkb.Cells(r, c).Value & ""
                End If
            Next
    
            BinaryStream.WriteText S, 1
        Next r
    
        BinaryStream.Position = 3 'skip BOM
        With BinaryStreamNoBOM
            .Type = adTypeBinary
            .Open
            BinaryStream.CopyTo BinaryStreamNoBOM
            .SaveToFile fileName1, adSaveCreateOverWrite
            .Close
        End With
    
        BinaryStream.Close
        ActiveWorkbook.Close
    
        MsgBox "export file .xls & .csv generated successfully"
    
    Unload Me
    
    End Sub

  2. #2
    Forum Moderator davesexcel's Avatar
    Join Date
    02-19-2006
    Location
    Regina
    MS-Off Ver
    MS 365
    Posts
    13,525

    Re: excel macro running on machine, but not on other machine. Language setting?

    Usually that would indicate the workbook sheet has 65k rows and the other sheet has over 1 million rows. So basically the older version of excel has less rows than the newer version.

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. excel userforms created with a 32 bit machine not loading on a 64 bit machine
    By stewe in forum Excel Programming / VBA / Macros
    Replies: 6
    Last Post: 02-10-2016, 10:12 PM
  2. Running Excel on a remote machine?
    By Carl22 in forum Excel Programming / VBA / Macros
    Replies: 1
    Last Post: 04-07-2015, 08:15 AM
  3. Running a userform on a machine without excel
    By sprites in forum Excel Programming / VBA / Macros
    Replies: 2
    Last Post: 03-08-2013, 09:11 AM
  4. Working code on my machine is returning out of range error on another machine.
    By je.suis.ketan in forum Excel Programming / VBA / Macros
    Replies: 2
    Last Post: 01-16-2012, 11:51 PM
  5. Macro runs fine on my machine; won't run on another user's machine
    By brl8 in forum Excel Programming / VBA / Macros
    Replies: 0
    Last Post: 07-29-2010, 03:16 PM
  6. [SOLVED] Reference & update destin. cells on 1st machine from source workbook on 2nd machine
    By eastside877@yahoo.com in forum Excel General
    Replies: 2
    Last Post: 03-01-2006, 12:25 AM
  7. [SOLVED] Reference & update destin. cells on 1st machine from source workbook on 2nd machine.
    By eastside877@yahoo.com in forum Excel General
    Replies: 6
    Last Post: 02-28-2006, 01:20 AM

Bookmarks

Posting Permissions

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

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1