VBA: errore di compilazione - routine troppo grande

Anonimo
2016-07-01T14:51:41+00:00

per la prima volta, nella mia breve esperienza di vba, mi è capitato di ricevere l'errore in oggetto.

qualcuno avrebbe dei suggerimenti in modo da non stravolgere il lavoro e risolvere questo problema?

di seguito posto il codice.

[quote]

Sub Salva_Ricetta()

Application.ScreenUpdating = False

Sheets("mod_tirelle").Select

Range("b3").Select

tirella = Range("b3")

If tirella = "" Then

    art = Range("g3")

    artcol = Range("o3")

    fondo = Range("g4")

    fondocol = Range("o4")

    Data = Range("b5")

    res = Range("D5")

    lm = Range("F5")

    ind = Range("h5")

    'Distinta1

    cdl1 = Range("A6")

    spess1 = Range("d7")

    comp1 = Range("a8")

    comp1a = Range("a10")

    peso1a = Range("d10")

    comp1b = Range("a11")

    peso1b = Range("d11")

    comp1c = Range("a12")

    peso1c = Range("d12")

    comp1d = Range("a13")

    peso1d = Range("d13")

    comp1e = Range("a14")

    peso1e = Range("d14")

    comp1f = Range("a15")

    peso1f = Range("d15")

    comp1g = Range("a16")

    peso1g = Range("d16")

    comp1h = Range("a17")

    peso1h = Range("d17")

    comp1i = Range("a18")

    peso1i = Range("d18")

    comp1l = Range("a19")

    peso1l = Range("d19")

    comp1m = Range("a20")

    peso1m = Range("d20")

    comp1n = Range("a21")

    peso1n = Range("d21")

    comp1o = Range("a22")

    peso1o = Range("d22")

    comp1p = Range("a23")

    peso1p = Range("d23")

    comp1q = Range("a24")

    peso1q = Range("d24")

    'Distinta2

    cdl2 = Range("e6")

    spess2 = Range("h7")

    comp2 = Range("e8")

    comp2a = Range("e10")

    peso2a = Range("h10")

    comp2b = Range("e11")

    peso2b = Range("h11")

    comp2c = Range("e12")

    peso2c = Range("h12")

    comp2d = Range("e13")

    peso2d = Range("h13")

    comp2e = Range("e14")

    peso2e = Range("h14")

    comp2f = Range("e15")

    peso2f = Range("h15")

    comp2g = Range("e16")

    peso2g = Range("h16")

    comp2h = Range("e17")

    peso2h = Range("h17")

    comp2i = Range("e18")

    peso2i = Range("h18")

    comp2l = Range("e19")

    peso2l = Range("h19")

    comp2m = Range("e20")

    peso2m = Range("h20")

    comp2n = Range("e21")

    peso2n = Range("h21")

    comp2o = Range("e22")

    peso2o = Range("h22")

    comp2p = Range("e23")

    peso2p = Range("h23")

    comp2q = Range("e24")

    peso2q = Range("h24")

    'Distinta3

    cdl3 = Range("i6")

    spess3 = Range("l7")

    comp3 = Range("i8")

    comp3a = Range("i10")

    peso3a = Range("l10")

    comp3b = Range("i11")

    peso3b = Range("l11")

    comp3c = Range("i12")

    peso3c = Range("l12")

    comp3d = Range("i13")

    peso3d = Range("l13")

    comp3e = Range("i14")

    peso3e = Range("l14")

    comp3f = Range("i15")

    peso3f = Range("l15")

    comp3g = Range("i16")

    peso3g = Range("l16")

    comp3h = Range("i17")

    peso3h = Range("l17")

    comp3i = Range("i18")

    peso3i = Range("l18")

    comp3l = Range("i19")

    peso3l = Range("l19")

    comp3m = Range("i20")

    peso3m = Range("l20")

    comp3n = Range("i21")

    peso3n = Range("l21")

    comp3o = Range("i22")

    peso3o = Range("l22")

    comp3p = Range("i23")

    peso3p = Range("l23")

    comp3q = Range("i24")

    peso3q = Range("l24")

    'Distinta4

    cdl4 = Range("m6")

    spess4 = Range("p7")

    comp4 = Range("m8")

    comp4a = Range("m10")

    peso4a = Range("p10")

    comp4b = Range("m11")

    peso4b = Range("p11")

    comp4c = Range("m12")

    peso4c = Range("p12")

    comp4d = Range("m13")

    peso4d = Range("p13")

    comp4e = Range("m14")

    peso4e = Range("p14")

    comp4f = Range("m15")

    peso4f = Range("p15")

    comp4g = Range("m16")

    peso4g = Range("p16")

    comp4h = Range("m17")

    peso4h = Range("p17")

    comp4i = Range("m18")

    peso4i = Range("p18")

    comp4l = Range("m19")

    peso4l = Range("p19")

    comp4m = Range("m20")

    peso4m = Range("p20")

    comp4n = Range("m21")

    peso4n = Range("p21")

    comp4o = Range("m22")

    peso4o = Range("p22")

    comp4p = Range("m23")

    peso4p = Range("p23")

    comp4q = Range("m24")

    peso4q = Range("p24")

    'Distinta5

    cdl5 = Range("a25")

    spess5 = Range("d26")

    comp5 = Range("a27")

    comp5a = Range("a29")

    peso5a = Range("d29")

    comp5b = Range("a30")

    peso5b = Range("d30")

    comp5c = Range("a31")

    peso5c = Range("d31")

    comp5d = Range("a32")

    peso5d = Range("d32")

    comp5e = Range("a33")

    peso5e = Range("d33")

    comp5f = Range("a34")

    peso5f = Range("d34")

    comp5g = Range("a35")

    peso5g = Range("d35")

    comp5h = Range("a36")

    peso5h = Range("d36")

    comp5i = Range("a37")

    peso5i = Range("d37")

    comp5l = Range("a38")

    peso5l = Range("d38")

    comp5m = Range("a39")

    peso5m = Range("d39")

    comp5n = Range("a40")

    peso5n = Range("d40")

    comp5o = Range("a41")

    peso5o = Range("d41")

    comp5p = Range("a42")

    peso5p = Range("d42")

    comp5q = Range("a43")

    peso5q = Range("d43")

    'Distinta6

    cdl6 = Range("e25")

    spess6 = Range("h26")

    comp6 = Range("e27")

    comp6a = Range("e29")

    peso6a = Range("h29")

    comp6b = Range("e30")

    peso6b = Range("h30")

    comp6c = Range("e31")

    peso6c = Range("h31")

    comp6d = Range("e32")

    peso6d = Range("h32")

    comp6e = Range("e33")

    peso6e = Range("h33")

    comp6f = Range("e34")

    peso6f = Range("h34")

    comp6g = Range("e35")

    peso6g = Range("h35")

    comp6h = Range("e36")

    peso6h = Range("h36")

    comp6i = Range("e37")

    peso6i = Range("h37")

    comp6l = Range("e38")

    peso6l = Range("h38")

    comp6m = Range("e39")

    peso6m = Range("h39")

    comp6n = Range("e40")

    peso6n = Range("h40")

    comp6o = Range("e41")

    peso6o = Range("h41")

    comp6p = Range("e42")

    peso6p = Range("h42")

    comp6q = Range("e43")

    peso6q = Range("h43")

    'Distinta7

    cdl7 = Range("i25")

    spess7 = Range("l26")

    comp7 = Range("i27")

    comp7a = Range("i29")

    peso7a = Range("l29")

    comp7b = Range("i30")

    peso7b = Range("l30")

    comp7c = Range("i31")

    peso7c = Range("l31")

    comp7d = Range("i32")

    peso7d = Range("l32")

    comp7e = Range("i33")

    peso7e = Range("l33")

    comp7f = Range("i34")

    peso7f = Range("l34")

    comp7g = Range("i35")

    peso7g = Range("l35")

    comp7h = Range("i36")

    peso7h = Range("l36")

    comp7i = Range("i37")

    peso7i = Range("l37")

    comp7l = Range("i38")

    peso7l = Range("l38")

    comp7m = Range("i39")

    peso7m = Range("l39")

    comp7n = Range("i40")

    peso7n = Range("l40")

    comp7o = Range("i41")

    peso7o = Range("l41")

    comp7p = Range("i42")

    peso7p = Range("l42")

    comp7q = Range("i43")

    peso7q = Range("l43")

    'Distinta8

    cdl8 = Range("m25")

    spess8 = Range("p26")

    comp8 = Range("m27")

    comp8a = Range("m29")

    peso8a = Range("p29")

    comp8b = Range("m30")

    peso8b = Range("p30")

    comp8c = Range("m31")

    peso8c = Range("p31")

    comp8d = Range("m32")

    peso8d = Range("p32")

    comp8e = Range("m33")

    peso8e = Range("p33")

    comp8f = Range("m34")

    peso8f = Range("p34")

    comp8g = Range("m35")

    peso8g = Range("p35")

    comp8h = Range("m36")

    peso8h = Range("p36")

    comp8i = Range("m37")

    peso8i = Range("p37")

    comp8l = Range("m38")

    peso8l = Range("p38")

    comp8m = Range("m39")

    peso8m = Range("p39")

    comp8n = Range("m40")

    peso8n = Range("p40")

    comp8o = Range("m41")

    peso8o = Range("p41")

    comp8p = Range("m42")

    peso8p = Range("p42")

    comp8q = Range("m43")

    peso8q = Range("p43")

    'copia dati in archivio2

Workbooks.Open Filename:= _

        "Q:\M\Mc\MT-T\TL\archivio2.xlsx"

    ActiveCell.FormulaR1C1 = ""

    Sheets("archivio2").Select

For i = 1 To 65536

If Cells(i, 1) = "" Then

Cells(i, 1) = Cells(i - 1, 1) + 1

Cells(i, 1).Select

tir = Selection

ActiveCell.Offset(0, 1).Activate

Selection = art

ActiveCell.Offset(0, 1).Activate

Selection = artcol

ActiveCell.Offset(0, 1).Activate

Selection = fondo

ActiveCell.Offset(0, 1).Activate

Selection = fondocol

ActiveCell.Offset(0, 1).Activate

Selection = Data

ActiveCell.Offset(0, 1).Activate

Selection = res

ActiveCell.Offset(0, 1).Activate

Selection = lm

ActiveCell.Offset(0, 1).Activate

Selection = ind

'Distinta1

ActiveCell.Offset(0, 1).Activate

Selection = cdl1

ActiveCell.Offset(0, 1).Activate

Selection = spess1

ActiveCell.Offset(0, 1).Activate

Selection = comp1

ActiveCell.Offset(0, 1).Activate

Selection = comp1a

ActiveCell.Offset(0, 1).Activate

Selection = peso1a

ActiveCell.Offset(0, 1).Activate

Selection = comp1b

ActiveCell.Offset(0, 1).Activate

Selection = peso1b

ActiveCell.Offset(0, 1).Activate

Selection = comp1c

ActiveCell.Offset(0, 1).Activate

Selection = peso1c

ActiveCell.Offset(0, 1).Activate

Selection = comp1d

ActiveCell.Offset(0, 1).Activate

Selection = peso1d

ActiveCell.Offset(0, 1).Activate

Selection = comp1e

ActiveCell.Offset(0, 1).Activate

Selection = peso1e

ActiveCell.Offset(0, 1).Activate

Selection = comp1f

ActiveCell.Offset(0, 1).Activate

Selection = peso1f

ActiveCell.Offset(0, 1).Activate

Selection = comp1g

ActiveCell.Offset(0, 1).Activate

Selection = peso1g

ActiveCell.Offset(0, 1).Activate

Selection = comp1h

ActiveCell.Offset(0, 1).Activate

Selection = peso1h

ActiveCell.Offset(0, 1).Activate

Selection = comp1i

ActiveCell.Offset(0, 1).Activate

Selection = peso1i

ActiveCell.Offset(0, 1).Activate

Selection = comp1l

ActiveCell.Offset(0, 1).Activate

Selection = peso1l

ActiveCell.Offset(0, 1).Activate

Selection = comp1m

ActiveCell.Offset(0, 1).Activate

Selection = peso1m

ActiveCell.Offset(0, 1).Activate

Selection = comp1n

ActiveCell.Offset(0, 1).Activate

Selection = peso1n

ActiveCell.Offset(0, 1).Activate

Selection = comp1o

ActiveCell.Offset(0, 1).Activate

Selection = peso1o

ActiveCell.Offset(0, 1).Activate

Selection = comp1p

ActiveCell.Offset(0, 1).Activate

Selection = peso1p

ActiveCell.Offset(0, 1).Activate

Selection = comp1q

ActiveCell.Offset(0, 1).Activate

Selection = peso1q

'Distinta2

ActiveCell.Offset(0, 1).Activate

Selection = cdl2

ActiveCell.Offset(0, 1).Activate

Selection = spess2

ActiveCell.Offset(0, 1).Activate

Selection = comp2

ActiveCell.Offset(0, 1).Activate

Selection = comp2a

ActiveCell.Offset(0, 1).Activate

Selection = peso2a

ActiveCell.Offset(0, 1).Activate

Selection = comp2b

ActiveCell.Offset(0, 1).Activate

Selection = peso2b

ActiveCell.Offset(0, 1).Activate

Selection = comp2c

ActiveCell.Offset(0, 1).Activate

Selection = peso2c

ActiveCell.Offset(0, 1).Activate

Selection = comp2d

ActiveCell.Offset(0, 1).Activate

Selection = peso2d

ActiveCell.Offset(0, 1).Activate

Selection = comp2e

ActiveCell.Offset(0, 1).Activate

Selection = peso2e

ActiveCell.Offset(0, 1).Activate

Selection = comp2f

ActiveCell.Offset(0, 1).Activate

Selection = peso2f

ActiveCell.Offset(0, 1).Activate

Selection = comp2g

ActiveCell.Offset(0, 1).Activate

Selection = peso2g

ActiveCell.Offset(0, 1).Activate

Selection = comp2h

ActiveCell.Offset(0, 1).Activate

Selection = peso2h

ActiveCell.Offset(0, 1).Activate

Selection = comp2i

ActiveCell.Offset(0, 1).Activate

Selection = peso2i

ActiveCell.Offset(0, 1).Activate

Selection = comp2l

ActiveCell.Offset(0, 1).Activate

Selection = peso2l

ActiveCell.Offset(0, 1).Activate

Selection = comp2m

ActiveCell.Offset(0, 1).Activate

Selection = peso2m

ActiveCell.Offset(0, 1).Activate

Selection = comp2n

ActiveCell.Offset(0, 1).Activate

Selection = peso2n

ActiveCell.Offset(0, 1).Activate

Selection = comp2o

ActiveCell.Offset(0, 1).Activate

Selection = peso2o

ActiveCell.Offset(0, 1).Activate

Selection = comp2p

ActiveCell.Offset(0, 1).Activate

Selection = peso2p

ActiveCell.Offset(0, 1).Activate

Selection = comp2q

ActiveCell.Offset(0, 1).Activate

Selection = peso2q

'Distinta3

ActiveCell.Offset(0, 1).Activate

Selection = cdl3

ActiveCell.Offset(0, 1).Activate

Selection = spess3

ActiveCell.Offset(0, 1).Activate

Selection = comp3

ActiveCell.Offset(0, 1).Activate

Selection = comp3a

ActiveCell.Offset(0, 1).Activate

Selection = peso3a

ActiveCell.Offset(0, 1).Activate

Selection = comp3b

ActiveCell.Offset(0, 1).Activate

Selection = peso3b

ActiveCell.Offset(0, 1).Activate

Selection = comp3c

ActiveCell.Offset(0, 1).Activate

Selection = peso3c

ActiveCell.Offset(0, 1).Activate

Selection = comp3d

ActiveCell.Offset(0, 1).Activate

Selection = peso3d

ActiveCell.Offset(0, 1).Activate

Selection = comp3e

ActiveCell.Offset(0, 1).Activate

Selection = peso3e

ActiveCell.Offset(0, 1).Activate

Selection = comp3f

ActiveCell.Offset(0, 1).Activate

Selection = peso3f

ActiveCell.Offset(0, 1).Activate

Selection = comp3g

ActiveCell.Offset(0, 1).Activate

Selection = peso3g

ActiveCell.Offset(0, 1).Activate

Selection = comp3h

ActiveCell.Offset(0, 1).Activate

Selection = peso3h

ActiveCell.Offset(0, 1).Activate

Selection = comp3i

ActiveCell.Offset(0, 1).Activate

Selection = peso3i

ActiveCell.Offset(0, 1).Activate

Selection = comp3l

ActiveCell.Offset(0, 1).Activate

Selection = peso3l

ActiveCell.Offset(0, 1).Activate

Selection = comp3m

ActiveCell.Offset(0, 1).Activate

Selection = peso3m

ActiveCell.Offset(0, 1).Activate

Selection = comp3n

ActiveCell.Offset(0, 1).Activate

Selection = peso3n

ActiveCell.Offset(0, 1).Activate

Selection = comp3o

ActiveCell.Offset(0, 1).Activate

Selection = peso3o

ActiveCell.Offset(0, 1).Activate

Selection = comp3p

ActiveCell.Offset(0, 1).Activate

Selection = peso3p

ActiveCell.Offset(0, 1).Activate

Selection = comp3q

ActiveCell.Offset(0, 1).Activate

Selection = peso3q

'Distinta4

ActiveCell.Offset(0, 1).Activate

Selection = cdl4

ActiveCell.Offset(0, 1).Activate

Selection = spess4

ActiveCell.Offset(0, 1).Activate

Selection = comp4

ActiveCell.Offset(0, 1).Activate

Selection = comp4a

ActiveCell.Offset(0, 1).Activate

Selection = peso4a

ActiveCell.Offset(0, 1).Activate

Selection = comp4b

ActiveCell.Offset(0, 1).Activate

Selection = peso4b

ActiveCell.Offset(0, 1).Activate

Selection = comp4c

ActiveCell.Offset(0, 1).Activate

Selection = peso4c

ActiveCell.Offset(0, 1).Activate

Selection = comp4d

ActiveCell.Offset(0, 1).Activate

Selection = peso4d

ActiveCell.Offset(0, 1).Activate

Selection = comp4e

ActiveCell.Offset(0, 1).Activate

Selection = peso4e

ActiveCell.Offset(0, 1).Activate

Selection = comp4f

ActiveCell.Offset(0, 1).Activate

Selection = peso4f

ActiveCell.Offset(0, 1).Activate

Selection = comp4g

ActiveCell.Offset(0, 1).Activate

Selection = peso4g

ActiveCell.Offset(0, 1).Activate

Selection = comp4h

ActiveCell.Offset(0, 1).Activate

Selection = peso4h

ActiveCell.Offset(0, 1).Activate

Selection = comp4i

ActiveCell.Offset(0, 1).Activate

Selection = peso4i

ActiveCell.Offset(0, 1).Activate

Selection = comp4l

ActiveCell.Offset(0, 1).Activate

Selection = peso4l

ActiveCell.Offset(0, 1).Activate

Selection = comp4m

ActiveCell.Offset(0, 1).Activate

Selection = peso4m

ActiveCell.Offset(0, 1).Activate

Selection = comp4n

ActiveCell.Offset(0, 1).Activate

Selection = peso4n

ActiveCell.Offset(0, 1).Activate

Selection = comp4o

ActiveCell.Offset(0, 1).Activate

Selection = peso4o

ActiveCell.Offset(0, 1).Activate

Selection = comp4p

ActiveCell.Offset(0, 1).Activate

Selection = peso4p

ActiveCell.Offset(0, 1).Activate

Selection = comp4q

ActiveCell.Offset(0, 1).Activate

Selection = peso4q

'Distinta5

ActiveCell.Offset(0, 1).Activate

Selection = cdl5

ActiveCell.Offset(0, 1).Activate

Selection = spess5

ActiveCell.Offset(0, 1).Activate

Selection = comp5

ActiveCell.Offset(0, 1).Activate

Selection = comp5a

ActiveCell.Offset(0, 1).Activate

Selection = peso5a

ActiveCell.Offset(0, 1).Activate

Selection = comp5b

ActiveCell.Offset(0, 1).Activate

Selection = peso5b

ActiveCell.Offset(0, 1).Activate

Selection = comp5c

ActiveCell.Offset(0, 1).Activate

Selection = peso5c

ActiveCell.Offset(0, 1).Activate

Selection = comp5d

ActiveCell.Offset(0, 1).Activate

Selection = peso5d

ActiveCell.Offset(0, 1).Activate

Selection = comp5e

ActiveCell.Offset(0, 1).Activate

Selection = peso5e

ActiveCell.Offset(0, 1).Activate

Selection = comp5f

ActiveCell.Offset(0, 1).Activate

Selection = peso5f

ActiveCell.Offset(0, 1).Activate

Selection = comp5g

ActiveCell.Offset(0, 1).Activate

Selection = peso5g

ActiveCell.Offset(0, 1).Activate

Selection = comp5h

ActiveCell.Offset(0, 1).Activate

Selection = peso5h

ActiveCell.Offset(0, 1).Activate

Selection = comp5i

ActiveCell.Offset(0, 1).Activate

Selection = peso5i

ActiveCell.Offset(0, 1).Activate

Selection = comp5l

ActiveCell.Offset(0, 1).Activate

Selection = peso5l

ActiveCell.Offset(0, 1).Activate

Selection = comp5m

ActiveCell.Offset(0, 1).Activate

Selection = peso5m

ActiveCell.Offset(0, 1).Activate

Selection = comp5n

ActiveCell.Offset(0, 1).Activate

Selection = peso5n

ActiveCell.Offset(0, 1).Activate

Selection = comp5o

ActiveCell.Offset(0, 1).Activate

Selection = peso5o

ActiveCell.Offset(0, 1).Activate

Selection = comp5p

ActiveCell.Offset(0, 1).Activate

Selection = peso5p

ActiveCell.Offset(0, 1).Activate

Selection = comp5q

ActiveCell.Offset(0, 1).Activate

Selection = peso5q

'Distinta6

ActiveCell.Offset(0, 1).Activate

Selection = cdl6

ActiveCell.Offset(0, 1).Activate

Selection = spess6

ActiveCell.Offset(0, 1).Activate

Selection = comp6

ActiveCell.Offset(0, 1).Activate

Selection = comp6a

ActiveCell.Offset(0, 1).Activate

Selection = peso6a

ActiveCell.Offset(0, 1).Activate

Selection = comp6b

ActiveCell.Offset(0, 1).Activate

Selection = peso6b

ActiveCell.Offset(0, 1).Activate

Selection = comp6c

ActiveCell.Offset(0, 1).Activate

Selection = peso6c

ActiveCell.Offset(0, 1).Activate

Selection = comp6d

ActiveCell.Offset(0, 1).Activate

Selection = peso6d

ActiveCell.Offset(0, 1).Activate

Selection = comp6e

ActiveCell.Offset(0, 1).Activate

Selection = peso6e

ActiveCell.Offset(0, 1).Activate

Selection = comp6f

ActiveCell.Offset(0, 1).Activate

Selection = peso6f

ActiveCell.Offset(0, 1).Activate

Selection = comp6g

ActiveCell.Offset(0, 1).Activate

Selection = peso6g

ActiveCell.Offset(0, 1).Activate

Selection = comp6h

ActiveCell.Offset(0, 1).Activate

Selection = peso6h

ActiveCell.Offset(0, 1).Activate

Selection = comp6i

ActiveCell.Offset(0, 1).Activate

Selection = peso6i

ActiveCell.Offset(0, 1).Activate

Selection = comp6l

ActiveCell.Offset(0, 1).Activate

Selection = peso6l

ActiveCell.Offset(0, 1).Activate

Selection = comp6m

ActiveCell.Offset(0, 1).Activate

Selection = peso6m

ActiveCell.Offset(0, 1).Activate

Selection = comp6n

ActiveCell.Offset(0, 1).Activate

Selection = peso6n

ActiveCell.Offset(0, 1).Activate

Selection = comp6o

ActiveCell.Offset(0, 1).Activate

Selection = peso6o

ActiveCell.Offset(0, 1).Activate

Selection = comp6p

ActiveCell.Offset(0, 1).Activate

Selection = peso6p

ActiveCell.Offset(0, 1).Activate

Selection = comp6q

ActiveCell.Offset(0, 1).Activate

Selection = peso6q

'Distinta7

ActiveCell.Offset(0, 1).Activate

Selection = cdl7

ActiveCell.Offset(0, 1).Activate

Selection = spess7

ActiveCell.Offset(0, 1).Activate

Selection = comp7

ActiveCell.Offset(0, 1).Activate

Selection = comp7a

ActiveCell.Offset(0, 1).Activate

Selection = peso7a

ActiveCell.Offset(0, 1).Activate

Selection = comp7b

ActiveCell.Offset(0, 1).Activate

Selection = peso7b

ActiveCell.Offset(0, 1).Activate

Selection = comp7c

ActiveCell.Offset(0, 1).Activate

Selection = peso7c

ActiveCell.Offset(0, 1).Activate

Selection = comp7d

ActiveCell.Offset(0, 1).Activate

Selection = peso7d

ActiveCell.Offset(0, 1).Activate

Selection = comp7e

ActiveCell.Offset(0, 1).Activate

Selection = peso7e

ActiveCell.Offset(0, 1).Activate

Selection = comp7f

ActiveCell.Offset(0, 1).Activate

Selection = peso7f

ActiveCell.Offset(0, 1).Activate

Selection = comp7g

ActiveCell.Offset(0, 1).Activate

Selection = peso7g

ActiveCell.Offset(0, 1).Activate

Selection = comp7h

ActiveCell.Offset(0, 1).Activate

Selection = peso7h

ActiveCell.Offset(0, 1).Activate

Selection = comp7i

ActiveCell.Offset(0, 1).Activate

Selection = peso7i

ActiveCell.Offset(0, 1).Activate

Selection = comp7l

ActiveCell.Offset(0, 1).Activate

Selection = peso7l

ActiveCell.Offset(0, 1).Activate

Selection = comp7m

ActiveCell.Offset(0, 1).Activate

Selection = peso7m

ActiveCell.Offset(0, 1).Activate

Selection = comp7n

ActiveCell.Offset(0, 1).Activate

Selection = peso7n

ActiveCell.Offset(0, 1).Activate

Selection = comp7o

ActiveCell.Offset(0, 1).Activate

Selection = peso7o

ActiveCell.Offset(0, 1).Activate

Selection = comp7p

ActiveCell.Offset(0, 1).Activate

Selection = peso7p

ActiveCell.Offset(0, 1).Activate

Selection = comp7q

ActiveCell.Offset(0, 1).Activate

Selection = peso7q

'Distinta8

ActiveCell.Offset(0, 1).Activate

Selection = cdl8

ActiveCell.Offset(0, 1).Activate

Selection = spess8

ActiveCell.Offset(0, 1).Activate

Selection = comp8

ActiveCell.Offset(0, 1).Activate

Selection = comp8a

ActiveCell.Offset(0, 1).Activate

Selection = peso8a

ActiveCell.Offset(0, 1).Activate

Selection = comp8b

ActiveCell.Offset(0, 1).Activate

Selection = peso8b

ActiveCell.Offset(0, 1).Activate

Selection = comp8c

ActiveCell.Offset(0, 1).Activate

Selection = peso8c

ActiveCell.Offset(0, 1).Activate

Selection = comp8d

ActiveCell.Offset(0, 1).Activate

Selection = peso8d

ActiveCell.Offset(0, 1).Activate

Selection = comp8e

ActiveCell.Offset(0, 1).Activate

Selection = peso8e

ActiveCell.Offset(0, 1).Activate

Selection = comp8f

ActiveCell.Offset(0, 1).Activate

Selection = peso8f

ActiveCell.Offset(0, 1).Activate

Selection = comp8g

ActiveCell.Offset(0, 1).Activate

Selection = peso8g

ActiveCell.Offset(0, 1).Activate

Selection = comp8h

ActiveCell.Offset(0, 1).Activate

Selection = peso8h

ActiveCell.Offset(0, 1).Activate

Selection = comp8i

ActiveCell.Offset(0, 1).Activate

Selection = peso8i

ActiveCell.Offset(0, 1).Activate

Selection = comp8l

ActiveCell.Offset(0, 1).Activate

Selection = peso8l

ActiveCell.Offset(0, 1).Activate

Selection = comp8m

ActiveCell.Offset(0, 1).Activate

Selection = peso8m

ActiveCell.Offset(0, 1).Activate

Selection = comp8n

ActiveCell.Offset(0, 1).Activate

Selection = peso8n

ActiveCell.Offset(0, 1).Activate

Selection = comp8o

ActiveCell.Offset(0, 1).Activate

Selection = peso8o

ActiveCell.Offset(0, 1).Activate

Selection = comp8p

ActiveCell.Offset(0, 1).Activate

Selection = peso8p

ActiveCell.Offset(0, 1).Activate

Selection = comp8q

ActiveCell.Offset(0, 1).Activate

Selection = peso8q

ActiveWorkbook.Save

    ActiveWindow.Close

'riporta n° tirella nel modulo ricetta

Sheets("mod_tirelle").Select

Range("b3").Select

Selection = tir

i = 65536

End If

Next i

'stampa del modulo tirella

Range("A1:q43").Select

    Selection.PrintOut Copies:=1, Collate:=True

Range("b3, g3, o3, g4, o4, b5, d5, f5, h5, i5, a6, d7, a8, e6, h7, e8, i6, l7, i8, m6, p7, m8, a25, d26, a27, e25, h26, e27, i25, l26, i27, m25, p26, m27, q6, q25").Select

    Selection.ClearContents

Range("A10:d24").Select

    Selection.ClearContents

Range("e10:h24").Select

    Selection.ClearContents

Range("i10:l24").Select

    Selection.ClearContents

Range("m10:p24").Select

    Selection.ClearContents

Range("A29:d43").Select

    Selection.ClearContents

Range("e29:h43").Select

    Selection.ClearContents

Range("i29:l43").Select

    Selection.ClearContents

Range("m29:p43").Select

    Selection.ClearContents

    Range("A1").Select

'_____________________________________________________________________________

Else

Sheets("mod_tirelle").Select

Range("xfd1").Select

Selection = tirella

numtir = Selection

    art = Range("g3")

    artcol = Range("o3")

    fondo = Range("g4")

    fondocol = Range("o4")

    Data = Range("b5")

    res = Range("D5")

    lm = Range("F5")

    ind = Range("h5")

    'Distinta1

    cdl1 = Range("A6")

    spess1 = Range("d7")

    comp1 = Range("a8")

    comp1a = Range("a10")

    peso1a = Range("d10")

    comp1b = Range("a11")

    peso1b = Range("d11")

    comp1c = Range("a12")

    peso1c = Range("d12")

    comp1d = Range("a13")

    peso1d = Range("d13")

    comp1e = Range("a14")

    peso1e = Range("d14")

    comp1f = Range("a15")

    peso1f = Range("d15")

    comp1g = Range("a16")

    peso1g = Range("d16")

    comp1h = Range("a17")

    peso1h = Range("d17")

    comp1i = Range("a18")

    peso1i = Range("d18")

    comp1l = Range("a19")

    peso1l = Range("d19")

    comp1m = Range("a20")

    peso1m = Range("d20")

    comp1n = Range("a21")

    peso1n = Range("d21")

    comp1o = Range("a22")

    peso1o = Range("d22")

    comp1p = Range("a23")

    peso1p = Range("d23")

    comp1q = Range("a24")

    peso1q = Range("d24")

    'Distinta2

    cdl2 = Range("e6")

    spess2 = Range("h7")

    comp2 = Range("e8")

    comp2a = Range("e10")

    peso2a = Range("h10")

    comp2b = Range("e11")

    peso2b = Range("h11")

    comp2c = Range("e12")

    peso2c = Range("h12")

    comp2d = Range("e13")

    peso2d = Range("h13")

    comp2e = Range("e14")

    peso2e = Range("h14")

    comp2f = Range("e15")

    peso2f = Range("h15")

    comp2g = Range("e16")

    peso2g = Range("h16")

    comp2h = Range("e17")

    peso2h = Range("h17")

    comp2i = Range("e18")

    peso2i = Range("h18")

    comp2l = Range("e19")

    peso2l = Range("h19")

    comp2m = Range("e20")

    peso2m = Range("h20")

    comp2n = Range("e21")

    peso2n = Range("h21")

    comp2o = Range("e22")

    peso2o = Range("h22")

    comp2p = Range("e23")

    peso2p = Range("h23")

    comp2q = Range("e24")

    peso2q = Range("h24")

    'Distinta3

    cdl3 = Range("i6")

    spess3 = Range("l7")

    comp3 = Range("i8")

    comp3a = Range("i10")

    peso3a = Range("l10")

    comp3b = Range("i11")

    peso3b = Range("l11")

    comp3c = Range("i12")

    peso3c = Range("l12")

    comp3d = Range("i13")

    peso3d = Range("l13")

    comp3e = Range("i14")

    peso3e = Range("l14")

    comp3f = Range("i15")

    peso3f = Range("l15")

    comp3g = Range("i16")

    peso3g = Range("l16")

    comp3h = Range("i17")

    peso3h = Range("l17")

    comp3i = Range("i18")

    peso3i = Range("l18")

    comp3l = Range("i19")

    peso3l = Range("l19")

    comp3m = Range("i20")

    peso3m = Range("l20")

    comp3n = Range("i21")

    peso3n = Range("l21")

    comp3o = Range("i22")

    peso3o = Range("l22")

    comp3p = Range("i23")

    peso3p = Range("l23")

    comp3q = Range("i24")

    peso3q = Range("l24")

    'Distinta4

    cdl4 = Range("m6")

    spess4 = Range("p7")

    comp4 = Range("m8")

    comp4a = Range("m10")

    peso4a = Range("p10")

    comp4b = Range("m11")

    peso4b = Range("p11")

    comp4c = Range("m12")

    peso4c = Range("p12")

    comp4d = Range("m13")

    peso4d = Range("p13")

    comp4e = Range("m14")

    peso4e = Range("p14")

    comp4f = Range("m15")

    peso4f = Range("p15")

    comp4g = Range("m16")

    peso4g = Range("p16")

    comp4h = Range("m17")

    peso4h = Range("p17")

    comp4i = Range("m18")

    peso4i = Range("p18")

    comp4l = Range("m19")

    peso4l = Range("p19")

    comp4m = Range("m20")

    peso4m = Range("p20")

    comp4n = Range("m21")

    peso4n = Range("p21")

    comp4o = Range("m22")

    peso4o = Range("p22")

    comp4p = Range("m23")

    peso4p = Range("p23")

    comp4q = Range("m24")

    peso4q = Range("p24")

    'Distinta5

    cdl5 = Range("a25")

    spess5 = Range("d26")

    comp5 = Range("a27")

    comp5a = Range("a29")

    peso5a = Range("d29")

    comp5b = Range("a30")

    peso5b = Range("d30")

    comp5c = Range("a31")

    peso5c = Range("d31")

    comp5d = Range("a32")

    peso5d = Range("d32")

    comp5e = Range("a33")

    peso5e = Range("d33")

    comp5f = Range("a34")

    peso5f = Range("d34")

    comp5g = Range("a35")

    peso5g = Range("d35")

    comp5h = Range("a36")

    peso5h = Range("d36")

    comp5i = Range("a37")

    peso5i = Range("d37")

    comp5l = Range("a38")

    peso5l = Range("d38")

    comp5m = Range("a39")

    peso5m = Range("d39")

    comp5n = Rang

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

43 risposte

Ordina per: Più utili
  1. Anonimo
    2016-07-04T14:30:40+00:00

    si, avevo calcolato male contando come unico campo i (due) campi della parte distinta.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2016-07-04T13:41:03+00:00

    ciao

    grazie anche per il tuo contributo

    a me i campi da memorizzare risultano in totale 153 e non 272 (?!?)

    provo ugualmente il codice e vediamo cosa ne esce ;)

    agg: a questa riga di codice

    arrDati(i) = .Range("Campo" & i).Value2

    restituisce: errore di runtime 1004 - metodo 'Range' dell'oggetto' _Worksheet' non riuscito

    Scusa non avevo letto questa.

    Come fanno ad essere solo 153?

    Guardando solo le 8 distinte (Distinta/Peso) dal file che avevi pubblicato abbiamo 15*2*8=240

    Poi, se non ho inteso male, hai per ognuna delle 8 distinte altre tre voci ("attorno" alla cella spes).

    Più le voci presenti all'inizio.

    Nel file che ho pubblicato ho impostato uno sfondo giallo. Prova a vedere se ho capito se quelli sono i campi da considerare.

    Hai provato il file che ho pubblicato e che ripubblico visto che un appuntamento è saltato e sulla base di questo foglio ho corretto una piccola cosa nella fase di memorizzazione (il controllo se il numero inserito è superiore al numero di record già presenti) e ho previsto il caricamento dei dati dall'archivio e la "pulizia" dei dati dal foglio tirelle.

    Vedi i file che ripubblico:

    Tirelle

    Archivio

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2016-07-04T12:46:49+00:00

    Per renderla più semplice (per mi abitudine ho ragionato escludendo il valore della prima riga di intestazioni della current region dell'archivio, cosa che invece in questo caso si può considerare ai fini degli inserimenti dati) la procedura l'ho modificata così:

    Vedi il file Tirelle #2

    Tirelle #2

    Archivio

    '---

    Sub Memorizza_Dati()

      Set wbTirelle = ThisWorkbook

      Set wsTirelle = wbTirelle.Worksheets(sWsNomeTirelle)

      Dim arrDati(1 To NumCampi) As Variant

      Dim i As Integer

      Dim NumRecordARchivio As Long

      With wsTirelle

        '<--- popolo una matrice con i valori presenti nel foglio Tirelle --->

        For i = 1 To NumCampi

          arrDati(i) = .Range("Campo" & i).Value2

        Next i

        '<--- apro il file archivio e inserisco i dati presenti nella matrice --->

        Set wbArchivio = Application.Workbooks.Open(sPathArchivio & sWbNomeArchivio)

        Set wsArchivio = wbArchivio.Worksheets(sWsNomeArchivio)

        Set FrngArchivio = wsArchivio.Range(sFrngArchivio)

        If .Range("RifRigaArchivio") = Empty Then '<--- cella G3 nominata RifRigaArchivio se vuota nuovo inserimento

          NumRecordARchivio = FrngArchivio.CurrentRegion.Rows.Count

          .Range("RifRigaArchivio") = NumRecordARchivio

        Else '<--- se non vuota inserisce i dati in un precedente record

          If .Range("RifRigaARchivio").Value <= FrngArchivio.CurrentRegion.Rows.Count Then

            NumRecordARchivio = .Range("RifRigaArchivio").Value

          Else

            MsgBox "In numero di record inserito è superiore ai record presenti in archivio!" & vbCr & _

                    "La memorizzazione non viene elaborata!", vbCritical, "Memorizzazione Dati"

            GoTo SkipMemorizzazione

          End If

        End If

        With FrngArchivio

          .Offset(NumRecordARchivio, 0) = NumRecordARchivio

          .Offset(NumRecordARchivio, 1).Resize(1, NumCampi).Value = arrDati

        End With

      End With

    SkipMemorizzazione:

      wbArchivio.Save

      'wbArchivio.Close SaveChanges:=True

    End Sub

    '---

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2016-07-04T12:44:43+00:00

    Nel frattempo pubblico la mia idea (al momento riguarda la sola memorizzazione dei dati dal foglio di Paolo all'archivio).

    Ho assegnato dei nomi (Campo1, Campo2, ecc. ecc.), a livello di foglio di lavoro, alle celle che dovrebbero contenere dati da memorizzare (a me risultano essere 272 valori).

    Ho assegnato anche un nome alla cella G3 (RifRigaArchivio)

    Ho creato un file Archivio.xlsx, con un foglio Archivo dove in prima riga ho inserto delle intestazioni di colonna come da immagine

    ![](http://fud.community.services.support.microsoft.com/Fud/FileDownloadHandler.ashx?fid=bfad2623-43f6-4ea4-895f-5ce48f4f8ea4)

    La procedura, provata velocemente a dire il vero e comunque ancora da sgrezzare per alcuni particolari (ad es. adesso ho lasciato che venga attivato il foglio archivio e che non venga chiuso ma solo salvato per poter verficare il risultato delle operazioni fatte), in caso in cui in G3 (cella con nome RifRigaArchivio) aggiunge un record.

    Se la cella G3 ha un valore sostituisce i valori e se per caso il valore inserito fosse maggiore al numero di record presenti in archivio lancia un messaggio di avviso e conclude il lavoro senza effettuare memorizzazioni.

    Questi i due file di esempio:

    Tirelle

    Archivio

    End Sub

    '---

    ciao

    grazie anche per il tuo contributo

    a me i campi da memorizzare risultano in totale 153 e non 272 (?!?)

    provo ugualmente il codice e vediamo cosa ne esce ;)

    agg: a questa riga di codice

    arrDati(i) = .Range("Campo" & i).Value2

    restituisce: errore di runtime 1004 - metodo 'Range' dell'oggetto' _Worksheet' non riuscito

    La risposta è stata utile?

    0 commenti Nessun commento
  5. Anonimo
    2016-07-04T12:27:46+00:00

    Queste righe si possono eliminare :-)  

      For i = LBound(arrDati) To UBound(arrDati)

          Debug.Print arrDati(i)

        Next i

    La risposta è stata utile?

    0 commenti Nessun commento