Condividi:        

brevemente

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

brevemente

Postdi giorgioa » 21/07/23 21:38

Salve,

in macro devo sottrarre c2-c1
in macro se scrivo rigo 2 vale il dato di rigo 1
ma come faccio a far riconoscere il dato di rigo 1
mica posso scrivere 0
quindi cells(1+c,208+y).value = abs(cells(1+c,2+y).value-cells(0+c, 1+y).value)

da correggere il codice

Grazie a chi mi aiuterà
giorgioa
Utente Senior
 
Post: 773
Iscritto il: 16/04/12 15:00

Sponsor
 

Re: brevemente

Postdi giorgioa » 21/07/23 21:51

Per evitare via vai di msg riporto il codice
Dim i As Integer, y As Integer, c As Integer
c = Sheets("ARCH1").Cells(Rows.Count, 1).End(xlUp).Row
c = 1
For c = 1 To c
For y = 1 To 5
Cells(c, y).Select
Cells(1 + c, 208 + y).Value = Abs(Cells(1 + c, 2).Value - Cells(1 + c, 1 + y).Value)


Next y
Next c
End Sub
colonna 3 rigo 1 il dato è fisso cioè sottrarre c2 - c1, poi c2 -d1 poi c2- e1 eccetera
giorgioa
Utente Senior
 
Post: 773
Iscritto il: 16/04/12 15:00

Re: brevemente

Postdi Anthony47 » 22/07/23 00:08

in macro se scrivo rigo 2 vale il dato di rigo 1
Ehh??? :eeh:
Credo che sei arrivato erroneamente a questa conclusione perchè tu usi Cells(1 + c, 2)

Se vuoi fare C2-C1, poi C2-D1, poi C2-E1 etc puoi fare un ciclo del tipo
Codice: Seleziona tutto
For X = 3 To Boh        'si parte da C1, a quale colonna bisogna arrivare?
    Cells(NonSo, Quale) = Abs(Cells(2, "C") - Cells(1, X))        'Ricorda la sintassi:  Cells(NumRga,NumColonna)
Next X
Avatar utente
Anthony47
Moderatore
 
Post: 19230
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: brevemente

Postdi giorgioa » 23/07/23 17:42

salve,

mi è stato utile quella colona fra "C"
però credo di non aver afferrato il concetto
for x = 3 to 7

ho fatto così (tutti fanno la prima elementare io quella alimentare)

Codice: Seleziona tutto
Dim x As Integer, i As Integer, y As Integer, c As Integer, z As Integer
c = Sheets("A_1").Cells(Rows.Count, 1).End(xlUp).Row
'Range("h2:Q" & c).ClearContents
Sheets("A_2").Select
For c = 1 To c
    For X = 1 To 4
        Cells(3 + c, 7 + X).Value = Abs(Cells(3 + c, "c").Value - Cells(3 + c, 3 + X).Value) + Cells(3 + c, "A")
    Next X
    For Y = 1 To 3
        Cells(3 + c, 11 + Y).Value = Abs(Cells(3 + c, "d").Value - Cells(3 + c, 4 + Y).Value) + Cells(3 + c, "A")
    Next Y
    For Z = 1 To 2
        Cells(3 + c, 14 + Z).Value = Abs(Cells(3 + c, "e").Value - Cells(3 + c, 5 + Z).Value) + Cells(3 + c, "A")
    Next Z
    For I = 1 To 1
        Cells(3 + c, 17).Value = Abs(Cells(3 + c, "f").Value - Cells(3 + c, 7).Value) + Cells(3 + c, "A")
    Next I
Next c
giorgioa
Utente Senior
 
Post: 773
Iscritto il: 16/04/12 15:00

Re: brevemente

Postdi Anthony47 » 23/07/23 22:24

Come sempre la descrizione dei dati "da lavorare" (anche solo una immagine) e di cosa si vuole ottenere aiuta "molto" a capire la domanda e impostare una soluzione...
Avatar utente
Anthony47
Moderatore
 
Post: 19230
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows

Chi c’è in linea

Visitano il forum: papiriof e 23 ospiti