Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.74 KB | None | 0 0
  1. Sub processdata()
  2.  
  3. Application.ScreenUpdating = False
  4. Application.Calculation = xlCalculationManual
  5. Application.EnableEvents = False
  6. Application.DisplayAlerts = False
  7.  
  8. Dim XXXXLen As Long
  9. With Sheets("Input - XXXXwebnew")
  10. XXXXLen = .Cells(.Rows.Count, "A").End(xlUp).Row
  11. End With
  12.  
  13. 'add concatenate ref column in column A on Input XXXXWebNew
  14.  
  15. Sheets("INPUT - XXXXwebnew").Select
  16. Columns("A:A").Select
  17. Selection.Insert Shift:=xlToRight
  18. Sheets("INPUT - XXXXwebnew").Range("A1:A" & XXXXLen) = "=CONCATENATE(E1,""_"",G1,""_"",I1)"
  19. Application.Calculate
  20. Sheets("Input - XXXXwebnew").Range("a1:a" & XXXXLen).Copy
  21. Sheets("Input - XXXXwebnew").Range("a1:a" & XXXXLen).PasteSpecial xlPasteValues
  22.  
  23. 'picks up config products and moves them from E (input - XXXXwebnew) to to A on (workings) tab
  24.  
  25. Workbooks("workingmodel.xlsm").Sheets("WORKINGS").Range("a2:a" & XXXXLen + 1).value _
  26. = Workbooks("workingmodel.xlsm").Sheets("INPUT - XXXXWebNew").Range("e1:e" & XXXXLen).value
  27.  
  28. 'picks up simple products and moves them from A (input - XXXXwebnew) to to A on (workings) tab
  29.  
  30. 'set a second dim which is the dim XXXXlen X2
  31.  
  32. Dim XXXXlen2 As Long
  33. XXXXlen2 = XXXXLen + XXXXLen
  34.  
  35. Workbooks("workingmodel.xlsm").Sheets("WORKINGS").Range("a" & XXXXLen + 2 & ":a" & XXXXlen2 + 1).value _
  36. = Workbooks("workingmodel.xlsm").Sheets("INPUT - XXXXWebNew").Range("a1:a" & XXXXLen).value
  37.  
  38. 'remove all duplicates
  39.  
  40. Sheets("workings").Range("$A$1:$A$" & XXXXlen2 + 1).RemoveDuplicates Columns:=1, Header:=xlYes
  41.  
  42. 'dim set for Workings tab length of data
  43.  
  44. Dim WorkLen As Long
  45. With Sheets("WORKINGS")
  46. WorkLen = .Cells(.Rows.Count, "A").End(xlUp).Row
  47. End With
  48.  
  49. 'brings first formula in, calculates, C&Psp
  50.  
  51. Sheets("workings").Range("b2:b" & WorkLen) = "=IF(LEN(A2)=12,""CONFIG"",""SIMPLE"")"
  52. Application.Calculate
  53. Sheets("workings").Range("b2:b" & WorkLen).Copy
  54. Sheets("workings").Range("b2:b" & WorkLen).PasteSpecial xlPasteValues
  55.  
  56. 'Sheets("workings").Range("c1") = "does it appear within XXXX_all(code means yes / #N/A means no)"
  57.  
  58. 'define lenght of XXXX_all
  59. Dim XXXXallLen As Long
  60. With Sheets("INPUT - XXXX_all")
  61. XXXXallLen = .Cells(.Rows.Count, "A").End(xlUp).Row
  62. End With
  63.  
  64. 'building the various dimensions required for a dynamic vba vlookup
  65.  
  66. Dim sheetXXXX_all As String
  67. sheetXXXX_all = "INPUT - XXXX_all"
  68.  
  69. Dim XXXXalllookup As String
  70. XXXXalllookup = ("'" & sheetXXXX_all & "'!$A$1:$m$" & XXXXallLen)
  71.  
  72. Sheets("workings").Range("c2:c" & WorkLen) = "=left(VLOOKUP(A2," & XXXXalllookup & ",1,FALSE),12)"
  73. Application.Calculate
  74. Sheets("workings").Range("c2:c" & WorkLen).Copy
  75. Sheets("workings").Range("c2:c" & WorkLen).PasteSpecial xlPasteValues
  76.  
  77.  
  78. 'Sheets("workings").Range("d1") = "is it enabled"
  79.  
  80.  
  81. Sheets("workings").Range("d2:d" & WorkLen) = "=VLOOKUP(A2," & XXXXalllookup & ",2,FALSE)"
  82. Application.Calculate
  83. Sheets("workings").Range("d2:d" & WorkLen).Copy
  84. Sheets("workings").Range("d2:d" & WorkLen).PasteSpecial xlPasteValues
  85.  
  86.  
  87. 'Sheets("workings").Range("e1") = "does it have an image 0 = no #N/A = product code doesn't exist"
  88.  
  89. Sheets("workings").Range("e2:e" & WorkLen) = "=VLOOKUP(A2," & XXXXalllookup & ",4,FALSE)"
  90. Application.Calculate
  91. Sheets("workings").Range("e2:e" & WorkLen).Copy
  92. Sheets("workings").Range("e2:e" & WorkLen).PasteSpecial xlPasteValues
  93.  
  94.  
  95. 'Sheets("workings").Range("f1") = "does description has a character"
  96.  
  97. Sheets("workings").Range("f2:f" & WorkLen) = "=IF(LEN(VLOOKUP(A2," & XXXXalllookup & ",4,FALSE))=0,""NO DESC"",""FINE"")"
  98. Application.Calculate
  99. Sheets("workings").Range("f2:f" & WorkLen).Copy
  100. Sheets("workings").Range("f2:f" & WorkLen).PasteSpecial xlPasteValues
  101.  
  102. 'Sheets("workings").Range("g1") = "RRRP Price"
  103.  
  104. Sheets("workings").Range("g2:g" & WorkLen) = "=IF(VLOOKUP(A2," & XXXXalllookup & ",6,FALSE)<0.1,""NO PRICE"",""PRICE EXISTS"")"
  105. Application.Calculate
  106. Sheets("workings").Range("g2:g" & WorkLen).Copy
  107. Sheets("workings").Range("g2:g" & WorkLen).PasteSpecial xlPasteValues
  108.  
  109. 'Sheets("workings").Range("h1") = "UK Price"
  110.  
  111. Sheets("workings").Range("h2:h" & WorkLen) = "=IF(VLOOKUP(A2," & XXXXalllookup & ",13,FALSE)<0.1,""NO PRICE"",""PRICE EXISTS"")"
  112. Application.Calculate
  113. Sheets("workings").Range("h2:h" & WorkLen).Copy
  114. Sheets("workings").Range("h2:h" & WorkLen).PasteSpecial xlPasteValues
  115.  
  116. 'Sheets("workings").Range("I1") = "Current stock greater than 0"
  117.  
  118. Sheets("workings").Range("i2:i" & WorkLen).FormulaR1C1 = "=IF(RC[-7]=""config"",IF(SUMIF('Input - XXXXwebnew'!C[-4],WORKINGS!RC[-8],'Input - XXXXwebnew'!C[11])<0.1,""NO STOCK"",""HAS STOCK""),IF(VLOOKUP(RC[-8],'Input - XXXXwebnew'!C[-8]:C[12],20,FALSE)>0,""HAS STOCK"",""NO STOCK""))"
  119. Application.Calculate
  120. Sheets("workings").Range("i2:i" & WorkLen).Copy
  121. Sheets("workings").Range("i2:i" & WorkLen).PasteSpecial xlPasteValues
  122.  
  123. Application.ScreenUpdating = True
  124. Application.Calculation = xlCalculationAutomatic
  125. Application.EnableEvents = True
  126. Application.DisplayAlerts = True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement