MACRO PARA PASAR VALOR DE UNA CELDA CON FÓRMULA A OTRA CELDA
Publicado por JOSE (1 intervención) el 04/03/2021 01:06:24
Hola a todos,
He creado un excel con dos pestañas. Una es la pestaña de REGISTRO donde meto los datos y otra es la pestaña de DATOS, donde se graban los datos de la primera pestaña una vez pulso el botón de GUARDAR. Todo funciona bien excepto en las celdas que tienen una fórmula. En estas celdas al apretar el botón de GUARDAR se borra la fórmula y graba un valor de ERROR en la pestaña de DATOS. ¿Alguien tiene solución para esto?
Muchas gracias, a continuación os pongo la macro. Las celdas que tienen la fórmula son la A16, C16 Y D16
He creado un excel con dos pestañas. Una es la pestaña de REGISTRO donde meto los datos y otra es la pestaña de DATOS, donde se graban los datos de la primera pestaña una vez pulso el botón de GUARDAR. Todo funciona bien excepto en las celdas que tienen una fórmula. En estas celdas al apretar el botón de GUARDAR se borra la fórmula y graba un valor de ERROR en la pestaña de DATOS. ¿Alguien tiene solución para esto?
Muchas gracias, a continuación os pongo la macro. Las celdas que tienen la fórmula son la A16, C16 Y D16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Sub GUARDAR()
'
' GUARDAR Macro
'
'
Sheets("DATOS").Select
Rows("3:3").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
Sheets("REGISTRO").Select
Range("D1").Select
Selection.Copy
Sheets("DATOS").Select
Range("A3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("B3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("B3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("D3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("C3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("B4").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("D3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Sheets("REGISTRO").Name = "REGISTRO"
Range("D4").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("E3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("A16").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("F3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("B16").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("G3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("C16").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("H3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("D16").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("DATOS").Select
Range("I3").Select
ActiveSheet.Paste
Sheets("REGISTRO").Select
Range("B3").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = ""
Range("D3").Select
ActiveCell.FormulaR1C1 = ""
Range("B4").Select
ActiveCell.FormulaR1C1 = ""
Range("D4").Select
ActiveCell.FormulaR1C1 = ""
Range("A16").Select
ActiveCell.FormulaR1C1 = ""
Range("B16").Select
ActiveCell.FormulaR1C1 = ""
Range("C16").Select
ActiveCell.FormulaR1C1 = ""
Range("D16").Select
ActiveCell.FormulaR1C1 = ""
ActiveWorkbook.Save
End Sub
Valora esta pregunta


0