Best regards friends of MREXCEL, thank you for accepting my subscription
I have a file that I want to automate 1 processes, I explain:
1. The COSTOS DE SERVICIOS Sheet must send the information contained in row 62 to the COSTOS PRODUCTOS NACIONALES sheet in the first available row: The information must be sent by placing YES in cell (E61) of Service Costs
The submitted information should be copied as follows:
COSTOS DE SERVICIOS (A62) = COSTOS PRODUCTOS NACIONALES (A)
COSTOS DE SERVICIOS (B62) = COSTOS PRODUCTOS NACIONALES (C)
COSTOS DE SERVICIOS (C62) = COSTOS PRODUCTOS NACIONALES (D)
COSTOS DE SERVICIOS (D62) = COSTOS PRODUCTOS NACIONALES (E)
Send specific data from one sheet to another when a condition is met,
The information on COSTOS PRODUCTOS NACIONALES (E) should be updated automatically if the COSTS OF SERVICES vary.
Very grateful in advance for your valuable help.
This is the VBA code that I used, but don´t work.
Sub EnviarDatosCostosDeServiciosACostosProductosNacionales()
Application.ScreenUpdating = False
Dim ult, ult1 As Long
Dim rng As Range
ult2 = Sheets("COSTOS DE SERVICIOS").Range("F" & Rows.Count).End(xlUp).Row
ult3 = Sheets("COSTOS DE SERVICIOS").Range("G" & Rows.Count).End(xlUp).Row
ult4 = Sheets("COSTOS DE SERVICIOS").Range("H" & Rows.Count).End(xlUp).Row
ult6 = Sheets("COSTOS DE SERVICIOS").Range("I" & Rows.Count).End(xlUp).Row
ult = Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & Rows.Count).End(xlUp).Row + 1
ult1 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("C" & Rows.Count).End(xlUp).Row + 1
ult5 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("D" & Rows.Count).End(xlUp).Row + 1
ult7 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & Rows.Count).End(xlUp).Row + 1
Application.ScreenUpdating = False
Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("E" & ult4).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("D" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("D" & ult4).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("C" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("C" & ult3).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("A" & ult2).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Select
MsgBox ("SE HA ENVIADO AL MODULO PRECIOS PRODUCTOS Y SERVICIOS LA INFORMACIÓN DE ESTE PRODUCTO O SERVICIO" & Chr(13) & _
"POR FAVOR COMPLETE LA INFORMACIÓN DE ESTE PRODUCTO O SERVICIO " & Chr(13) & _
"OPERACIÓN REALIZADA SATISFACTORIAMENTE"), vbInformation, "CALCULADORA DE PRECIOS Y COSTOS"
Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & ult1).Select
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 62 Then
If Target.Address Like "$D$*" Then
If Range("D" & Target.Row) <> 0 Then
Application.ScreenUpdating = False
Call EnviarDatosCostosDeServiciosACostosProductosNacionales
End If
End If
End If
'Dim prod$, ufo&, ufd&
Dim pro_d As Range
Dim rDependents As Range
uf = Range("C" & Rows.Count).End(xlUp).Row
'prod = TempCombo
prod = Range("A" & Target.Row).Value
If Application.Intersect(Target, Range("B1:B" & uf)) Is Nothing Then
Exit Sub
End If
If Worksheets("COSTOS DE SERVICIOS").Range("D" & Target.Row).Value = SI Then
With Sheets("COSTOS PRODUCTOS NACIONALES")
ufd = .Range("A" & Rows.Count).End(xlUp).Row
Set pro_d = .Range("A62:A" & ufd).Find(prod)
pro_d.Offset(, 1) = Worksheets("COSTOS DE SERVICIOS").Range("D" & Target.Row).Value
End With
End If
End Sub
I have a file that I want to automate 1 processes, I explain:
1. The COSTOS DE SERVICIOS Sheet must send the information contained in row 62 to the COSTOS PRODUCTOS NACIONALES sheet in the first available row: The information must be sent by placing YES in cell (E61) of Service Costs
The submitted information should be copied as follows:
COSTOS DE SERVICIOS (A62) = COSTOS PRODUCTOS NACIONALES (A)
COSTOS DE SERVICIOS (B62) = COSTOS PRODUCTOS NACIONALES (C)
COSTOS DE SERVICIOS (C62) = COSTOS PRODUCTOS NACIONALES (D)
COSTOS DE SERVICIOS (D62) = COSTOS PRODUCTOS NACIONALES (E)
Send specific data from one sheet to another when a condition is met,
The information on COSTOS PRODUCTOS NACIONALES (E) should be updated automatically if the COSTS OF SERVICES vary.
Very grateful in advance for your valuable help.
EXAMPLE.xlsm | |||||||
---|---|---|---|---|---|---|---|
A | B | C | D | E | |||
1 | Piscinas Aqualux S.A. | ||||||
2 | COSTOS DE SERVICIOS | ||||||
3 | NOMBRE SERVICIO PRESTADO: | UNIDAD DE MEDIDA | CANTIDAD DE PRODUCTO HORAS | COSTO UNITARIO COMPONENTE | TOTAL COSTO | ||
4 | LIMPIEZA DE PISCINA | ||||||
5 | COMPONENTES DEL SERVICIO | US | US | ||||
6 | PRODUCTOS Y SERVICIOS | ||||||
7 | ACETONA | frasco | 400 | 10,00 | 4.000,00 | ||
8 | ALCOHOL | litro | 1 | 10,00 | 10,00 | ||
9 | BOLSAS PLASTICAS 5 LITROS | unidad | 6 | 10,00 | 60,00 | ||
10 | CEMENTO | kilo | 1 | 10,00 | 10,00 | ||
11 | CLORO | litro | 12 | 10,00 | 120,00 | ||
12 | 10,00 | 0,00 | |||||
13 | 10,00 | 0,00 | |||||
14 | 10,00 | 0,00 | |||||
15 | 10,00 | 0,00 | |||||
16 | 10,00 | 0,00 | |||||
17 | 10,00 | 0,00 | |||||
18 | 10,00 | 0,00 | |||||
19 | 10,00 | 0,00 | |||||
20 | 10,00 | 0,00 | |||||
21 | 10,00 | 0,00 | |||||
22 | 10,00 | 0,00 | |||||
23 | 10,00 | 0,00 | |||||
24 | 10,00 | 0,00 | |||||
25 | 10,00 | 0,00 | |||||
26 | 10,00 | 0,00 | |||||
27 | 10,00 | 0,00 | |||||
28 | 10,00 | 0,00 | |||||
29 | 10,00 | 0,00 | |||||
30 | 10,00 | 0,00 | |||||
31 | 10,00 | 0,00 | |||||
32 | 10,00 | 0,00 | |||||
33 | 10,00 | 0,00 | |||||
34 | 10,00 | 0,00 | |||||
35 | 10,00 | 0,00 | |||||
36 | 10,00 | 0,00 | |||||
37 | TOTAL COSTOS DE PRODUCTOS Y SERVICIOS PARA LIMPIEZA DE PISCINA | 4.200,00 | |||||
38 | HORAS HOMBRE | ||||||
39 | LEONARDO BRICEÑO | Horas Hombre | 20 | 10,00 | 200,00 | ||
40 | Horas Hombre | 10,00 | 0,00 | ||||
41 | Horas Hombre | 10,00 | 0,00 | ||||
42 | Horas Hombre | 10,00 | 0,00 | ||||
43 | Horas Hombre | 10,00 | 0,00 | ||||
44 | Horas Hombre | 10,00 | 0,00 | ||||
45 | Horas Hombre | 10,00 | 0,00 | ||||
46 | Horas Hombre | 10,00 | 0,00 | ||||
47 | Horas Hombre | 10,00 | 0,00 | ||||
48 | Horas Hombre | 10,00 | 0,00 | ||||
49 | Horas Hombre | 10,00 | 0,00 | ||||
50 | Horas Hombre | 10,00 | 0,00 | ||||
51 | Horas Hombre | 10,00 | 0,00 | ||||
52 | Horas Hombre | 10,00 | 0,00 | ||||
53 | Horas Hombre | 10,00 | 0,00 | ||||
54 | Horas Hombre | 10,00 | 0,00 | ||||
55 | Horas Hombre | 10,00 | 0,00 | ||||
56 | Horas Hombre | 10,00 | 0,00 | ||||
57 | Horas Hombre | 10,00 | 0,00 | ||||
58 | Horas Hombre | 10,00 | 0,00 | ||||
59 | TOTAL COSTOS DE HORAS HOMBRE PARA LIMPIEZA DE PISCINA | 200,00 | |||||
60 | TOTAL GENERAL LIMPIEZA DE PISCINA | 4.400,00 | |||||
61 | CONFIRM TO PROCESS (YES/NO) | YES | |||||
62 | LIMPIEZA DE PISCINA | Servicio | 1 | 4.400,00 | |||
COSTOS DE SERVICIOS |
Cell Formulas | ||
---|---|---|
Range | Formula | |
A1 | A1 | ='INFORMACION GENERAL'!D5 |
B12:B36 | B12 | =IFERROR(VLOOKUP(A12,#REF!,3,0)," ") |
E39:E58,E7:E36 | E7 | =C7*D7 |
A37 | A37 | =CONCATENATE("TOTAL COSTOS DE PRODUCTOS Y SERVICIOS PARA ",A4) |
E37 | E37 | =SUM(E7:E36) |
A59 | A59 | =CONCATENATE("TOTAL COSTOS DE HORAS HOMBRE PARA ",A4) |
E59 | E59 | =SUM(E39:E58) |
A60 | A60 | =CONCATENATE("TOTAL GENERAL ",A4) |
E60 | E60 | =E37+E59 |
A62 | A62 | =A4 |
E62 | E62 | =E60 |
Cells with Conditional Formatting | ||||
---|---|---|---|---|
Cell | Condition | Cell Format | Stop If True | |
E61 | Cell Value | ="YES" | text | NO |
E61 | Cell Value | ="NO" | text | NO |
Cells with Data Validation | ||
---|---|---|
Cell | Allow | Criteria |
A39:A58 | List | =HORAS_HOMBRE |
A7 | List | =PRECIOS_PRODUCTOS |
A8:A11 | Custom | =CONTAR.SI($A$5:$A$10000;A8)<=1 |
A12:A36 | List | =PRECIOS_PRODUCTOS |
EXAMPLE.xlsm | |||||||||
---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | |||
1 | Piscinas Aqualux S.A. | ||||||||
2 | COSTOS DE PRODUCTOS Y SERVICIOS NACIONALES | ||||||||
3 | PRODUCTO / SERVICIO | NACIONAL | UNIDAD DE MEDIDA | CANTIDAD DE PRODUCTO | MONTO TOTAL DE LA COMPRA | COSTO PRODUCTO UNITARIO | |||
4 | U$ | u$ | |||||||
5 | ACETONA | NACIONAL | Frasco | 1.000,00 | 125.000,00 | 125,00 | por Frasco | ||
6 | AEROSOL | NACIONAL | Frasco | 10,00 | 10.000,00 | 1.000,00 | por Frasco | ||
7 | ALCOHOL | NACIONAL | Litro | 2.000,00 | 250.000,00 | 125,00 | por Litro | ||
8 | BOLSAS PLASTICAS 5 LITROS | NACIONAL | Paquete | 100,00 | 45.000,00 | 450,00 | por Paquete | ||
9 | CEMENTO | NACIONAL | Kilo | 12,00 | 2.600,00 | 216,67 | por Kilo | ||
10 | CLORO | NACIONAL | Galón | 100,00 | 325.000,00 | 3.250,00 | por Galón | ||
11 | CUADRADO 10 | NACIONAL | Envase | 1.500,00 | 360.000,00 | 240,00 | por Envase | ||
12 | CUADRADO 11 | NACIONAL | Envase | 20.000,00 | 650,00 | 0,03 | por Envase | ||
13 | CUADRADO 12 | NACIONAL | Envase | 200,00 | 10.000,00 | 50,00 | por Envase | ||
14 | CUADRADO 13 | NACIONAL | Envase | 150,00 | 140.000,00 | 933,33 | por Envase | ||
15 | CUADRADO 14 | NACIONAL | Envase | 200,00 | 250.000,00 | 1.250,00 | por Envase | ||
16 | CUADRADO 15 | NACIONAL | Caja | 1.500,00 | 350.000,00 | 233,33 | por Caja | ||
17 | PASTILLAS 4 | NACIONAL | Envase | 5.400,00 | 850,00 | 0,16 | por Envase | ||
18 | CUADRADO 4 | NACIONAL | Galón | 200,00 | 8.500,00 | 42,50 | por Galón | ||
19 | CUADRADO 5 | NACIONAL | Lata 450 ml | 650,00 | 1.350,00 | 2,08 | por Lata 450 ml | ||
20 | CUADRADO 6 | NACIONAL | Bolsa de 2 kilos | 2.000,00 | 100.000,00 | 50,00 | por Bolsa de 2 kilos | ||
21 | CUADRADO 7 | NACIONAL | Bolsa de 1,5 kilos | 200,00 | 120.000,00 | 600,00 | por Bolsa de 1,5 kilos | ||
22 | CUADRADO 8 | NACIONAL | Envase | 1.500,00 | 250.000,00 | 166,67 | por Envase | ||
23 | CUADRADO 9 | NACIONAL | Envase | 3.000,00 | 310.500,00 | 103,50 | por Envase | ||
24 | CUADRADRO 1 | NACIONAL | Bulto | 6.500,00 | 450,00 | 0,07 | por Bulto | ||
25 | CUADRADRO 2 | NACIONAL | Bolsa de 900 gramos | 1.000,00 | 7.540,00 | 7,54 | por Bolsa de 900 gramos | ||
26 | CUBO AMARILLO | NACIONAL | Caja | 2.500,00 | 175,00 | 0,07 | por Caja | ||
27 | CUBO AZUL | NACIONAL | Paquete | 1.200,00 | 1.450,00 | 1,21 | por Paquete | ||
28 | CUBO VERDE | NACIONAL | Bolsa | 1.500,00 | 25.000,00 | 16,67 | por Bolsa | ||
29 | CUBO VIOLETA | NACIONAL | Paquete | 1.600,00 | 2.560,00 | 1,60 | por Paquete | ||
30 | CUBOS ROJOS | NACIONAL | Bulto | 1.000,00 | 11.300,00 | 11,30 | por Bulto | ||
31 | DESINFECTANTE | NACIONAL | Litro | 1,00 | 55.000,00 | 55.000,00 | por Litro | ||
32 | DESODORANTE | NACIONAL | Caja | 350,00 | 890,00 | 2,54 | por Caja | ||
33 | INSECTICIDA | NACIONAL | Lata 450 ml | 100,00 | 1.275,00 | 12,75 | por Lata 450 ml | ||
34 | JABON EN POLVO | NACIONAL | Kilo | 100,00 | 387.000,00 | 3.870,00 | por Kilo | ||
35 | JABON LIQUIDO | NACIONAL | Litro | 65,00 | 100.000,00 | 1.538,46 | por Litro | ||
36 | LUBRICANTE | NACIONAL | Kilo | 1.254,00 | 20.000,00 | 15,95 | por Kilo | ||
37 | NEUTRALIZADOR | NACIONAL | Pote | 200,00 | 1.600,00 | 8,00 | por Pote | ||
38 | PASTILLAS ANTISEPTICAS | NACIONAL | Caja | 120,00 | 154.000,00 | 1.283,33 | por Caja | ||
39 | SELLADOR | NACIONAL | Paquete | 12,00 | 120.000,00 | 10.000,00 | por Paquete | ||
40 | SILICONE | NACIONAL | Frasco | 5,00 | 17.234,00 | 3.446,80 | por Frasco | ||
41 | YESO | NACIONAL | Kilo | 100,00 | 200.000,00 | 2.000,00 | por Kilo | ||
42 | LIMPIADOR VERDE | NACIONAL | Envase | 120,00 | 1.650,00 | 13,75 | por Envase | ||
43 | LIMPIADOR ROJO | NACIONAL | Caja | 100,00 | 255.000,00 | 2.550,00 | por Caja | ||
44 | LIMPIADOR AMARILLO | NACIONAL | Kilo | 1.200,00 | 475.800,00 | 396,50 | por Kilo | ||
45 | LIMPIADOR ROSADO | NACIONAL | Kilo | 675,00 | 1.275.000,00 | 1.888,89 | por Kilo | ||
46 | LIMPIADOR AZUL | NACIONAL | Bolsa | 1.200,00 | 650.000,00 | 541,67 | por Bolsa | ||
47 | LIO | NACIONAL | Kilo | 54,00 | 145.000,00 | 2.685,19 | por Kilo | ||
48 | LIMPIADOR TRANSPARENTE | NACIONAL | Kilo | 2.500,00 | 875.000,00 | 350,00 | por Kilo | ||
49 | LIMPIEZA DE PISCINA | NACIONAL | Servicio | 1,00 | 4.400,00 | 4.400,00 | por Servicio | ||
50 | NACIONAL | 0,00 | 0 | ||||||
51 | NACIONAL | 0,00 | 0 | ||||||
52 | NACIONAL | 0,00 | 0 | ||||||
53 | NACIONAL | 0,00 | 0 | ||||||
54 | NACIONAL | 0,00 | 0 | ||||||
55 | NACIONAL | 0,00 | 0 | ||||||
COSTOS PRODUCTOS NACIONALES |
Cell Formulas | ||
---|---|---|
Range | Formula | |
A1 | A1 | ='INFORMACION GENERAL'!D5 |
F5:F55 | F5 | =IFERROR(E5/D5,0) |
G5:G55 | G5 | =C5 |
Cells with Conditional Formatting | ||||
---|---|---|---|---|
Cell | Condition | Cell Format | Stop If True | |
G5:G10000 | Cell Value | =0 | text | NO |
Cells with Data Validation | ||
---|---|---|
Cell | Allow | Criteria |
E5:E55 | Any value | |
A5:B10000 | Custom | =CONTAR.SI($A$5:$A$10000;A5)<=1 |
C5:C10000 | List | =UNIDADES |
This is the VBA code that I used, but don´t work.
Sub EnviarDatosCostosDeServiciosACostosProductosNacionales()
Application.ScreenUpdating = False
Dim ult, ult1 As Long
Dim rng As Range
ult2 = Sheets("COSTOS DE SERVICIOS").Range("F" & Rows.Count).End(xlUp).Row
ult3 = Sheets("COSTOS DE SERVICIOS").Range("G" & Rows.Count).End(xlUp).Row
ult4 = Sheets("COSTOS DE SERVICIOS").Range("H" & Rows.Count).End(xlUp).Row
ult6 = Sheets("COSTOS DE SERVICIOS").Range("I" & Rows.Count).End(xlUp).Row
ult = Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & Rows.Count).End(xlUp).Row + 1
ult1 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("C" & Rows.Count).End(xlUp).Row + 1
ult5 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("D" & Rows.Count).End(xlUp).Row + 1
ult7 = Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & Rows.Count).End(xlUp).Row + 1
Application.ScreenUpdating = False
Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("E" & ult4).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("D" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("D" & ult4).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("C" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("C" & ult3).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Range("A" & ult1) = Sheets("COSTOS DE SERVICIOS").Range("A" & ult2).Value
Sheets("COSTOS PRODUCTOS NACIONALES").Select
MsgBox ("SE HA ENVIADO AL MODULO PRECIOS PRODUCTOS Y SERVICIOS LA INFORMACIÓN DE ESTE PRODUCTO O SERVICIO" & Chr(13) & _
"POR FAVOR COMPLETE LA INFORMACIÓN DE ESTE PRODUCTO O SERVICIO " & Chr(13) & _
"OPERACIÓN REALIZADA SATISFACTORIAMENTE"), vbInformation, "CALCULADORA DE PRECIOS Y COSTOS"
Sheets("COSTOS PRODUCTOS NACIONALES").Range("E" & ult1).Select
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 62 Then
If Target.Address Like "$D$*" Then
If Range("D" & Target.Row) <> 0 Then
Application.ScreenUpdating = False
Call EnviarDatosCostosDeServiciosACostosProductosNacionales
End If
End If
End If
'Dim prod$, ufo&, ufd&
Dim pro_d As Range
Dim rDependents As Range
uf = Range("C" & Rows.Count).End(xlUp).Row
'prod = TempCombo
prod = Range("A" & Target.Row).Value
If Application.Intersect(Target, Range("B1:B" & uf)) Is Nothing Then
Exit Sub
End If
If Worksheets("COSTOS DE SERVICIOS").Range("D" & Target.Row).Value = SI Then
With Sheets("COSTOS PRODUCTOS NACIONALES")
ufd = .Range("A" & Rows.Count).End(xlUp).Row
Set pro_d = .Range("A62:A" & ufd).Find(prod)
pro_d.Offset(, 1) = Worksheets("COSTOS DE SERVICIOS").Range("D" & Target.Row).Value
End With
End If
End Sub