| | Post: 1 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
09/06/2018 21:10 | |
starei facendo un foglio excel che estrae dati da una classifica(calcio) da web ed immettendo i nomi delle due squadre mi fa' delle previsioni...
in N23/N25/N27 ci sarebbero le percentuali x i segni 1/X/2 in L29(% OVER 1,5 IN l30 (% Under 1,5) in L32 (% Over 2,5) in L33 (% Under 2,5) in L35 (% Over 3,5) in L36 (% Under 3,5)
Vorrei poter copiare i dati tramite un pulsante copia dati solo se le percentuali per uno dei tre segni sia =>54% ed incollarli su' un secondo foglio (previsioni)il pulsante copia dati dovrebbe incollarli nel 2° foglio (se trova le celle vuote puo' partire da A2 del nuovo foglio ma se trova scritti altri dati dovrebbe accodarli da A3/A4/A5/A6 e cosi via....)
Ringrazio per una Vostra Cortese Risposta
Saluti |
|
| | Post: 3.009 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
10/06/2018 06:59 | |
Non dovrebbe essere difficile, devi semplicemente: - Posizionarti sul Foglio di lavoro "Origine", dove trovi le percentuali x i segni 1/X/2 - Tramite un Pulsante, eseguire un Loop all'interno del quale, quando trovi uno dei tre segni >= 54%, copi il valore nella prima riga libera Foglio di lavoro di "Destinazione"
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 1 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
12/06/2018 18:13 | |
tipo cosi?
Private Sub CommandButton1_Click()
If Range("N23").Value >= 60 Or Range("N25").Value >= 45 Or Range("N27").Value >= 57 Or Range("Q23").Value >= 80 Or Range("Q25").Value >= 80 Or Range("Q27").Value >= 80 Then
Range("A3:C3").Copy
Range("J1:J3").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A3").Select
End If
End Sub
in N23=1% in N25=X% in N27=2% in Q23=1X% in Q25=12% in Q27=X2%
e me li copia nel foglio di origine in J1 & J3
abbiate paziensa vengo dal vb6
e trasmigrare non e semplice.... |
| | Post: 3.028 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
12/06/2018 18:41 | |
Per poterti meglio aiutare sarebbe utile che, come esempio di ciò che vuoi ottenere, allegassi un File, senza Dati sensibili; così possiamo capire nel concreto la tua richiesta.
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 2 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
13/06/2018 13:16 | |
|
| | Post: 3 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
13/06/2018 13:18 | |
In pratica se la condizione e' esatta dovrebbe copiare i dati in ordine nome squadra casa squadra furi segno 1 e cosi via...
per poi incollarli nel foglio previsioni in ordine... |
| | Post: 3.031 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
13/06/2018 16:00 | |
Non è che abbia capito molto in ogni caso: @jjvincentes, scrive:
... in N23/N25/N27 ci sarebbero le percentuali x i segni 1/X/2 ... Vorrei poter copiare i dati tramite un pulsante copia dati solo se le percentuali per uno dei tre segni sia =>54%
ora nel File allegato in #5, trovo: - N23 43,82 - N25 46,55 - N27 9,62 Nessuno dei tre valori è >= 54%; quindi non copio nulla? O mi sbaglio? Nell'ipotesi che uno delle tre percentuali fosse >= 54%, nel Foglio di lavoro "PREVISIONI" in Cella "A1" trovo "SQUADRA CASA" in Cella "B1" trovo "SQUADRA FUORI"; nel Foglio di lavoro "BIELORUSSIA" trovo due Squadre: - VITEBSK; in Cella "A3" - TORPEDO MINSK; in Cella "C3" Questo significa che VITEBSK è la "SQUADRA CASA"? A margine di quanto sopra considera che le"Celle unite" a mio avviso creano solo problemi. Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 4 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
13/06/2018 16:37 | |
54 era riferito come prova
questo e' coretto :
Range("N23").Value >= 60 Or Range("N25").Value >= 45 Or Range("N27").Value >= 57 Or Range("Q23").Value >= 80 Or Range("Q25").Value >= 80 Or Range("Q27").Value >= 80
N23=Segno 1 =>60 Copia Dati
o N25=Segno x =>45 Copia Dati
o N27=Segno 2 =>57 Copia Dati
o Q23=DC 1X =>80 Copia Dati
o Q25=DC 12 =>80 Copia Dati
o Q27=DC x2 =>80 Copia Dati
o L29=Over 1,5 =>85,72 Copia Dati
o L30=Under 1,5 =>85,72 Copia Dati
o L32=Over 2,5 =>69 Copia Dati
o L33=Under 2,5 =>69 Copia Dati
o L35=Over 3,5 =>69 Copia Dati
o L36=Under 3,5 =>88 Copia Dati
li copia e le manda alla pagina previsioni solo se almeno una condizione e esatta
Si VITEBSK e la squadra di casa
|
| | Post: 3.032 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
13/06/2018 17:53 | |
Option Explicit
Sub Verifica()
Dim NRc As Long
With Worksheets("PREVISIONI")
NRc = .Range("A" & .Rows.Count).End(xlUp).Row + 1
If Range("N23").Value >= 60 Or Range("N25").Value >= 45 Or Range("N27").Value >= 57 _
Or Range("Q23").Value >= 80 Or Range("Q25").Value >= 80 Or Range("Q27").Value >= 80 Then
.Cells(NRc, 1).Value = Cells(3, 1).Value
.Cells(NRc, 2).Value = Cells(3, 3).Value
.Cells(NRc, 15).Value = Cells(31, 17).Value
.Cells(NRc, 16).Value = Cells(29, 17).Value
If Cells(23, 14).Value >= 60 Then .Cells(NRc, 3).Value = Cells(23, 14).Value
If Cells(25, 14).Value >= 45 Then .Cells(NRc, 4).Value = Cells(25, 14).Value
If Cells(27, 14).Value >= 57 Then .Cells(NRc, 5).Value = Cells(27, 14).Value
If Cells(23, 17).Value >= 80 Then .Cells(NRc, 6).Value = Cells(23, 17).Value
If Cells(25, 17).Value >= 80 Then .Cells(NRc, 7).Value = Cells(25, 17).Value
If Cells(27, 17).Value >= 80 Then .Cells(NRc, 8).Value = Cells(27, 17).Value
If Cells(29, 12).Value >= 85.72 Then .Cells(NRc, 9).Value = Cells(29, 12).Value
If Cells(30, 12).Value >= 85.72 Then .Cells(NRc, 10).Value = Cells(30, 12).Value
If Cells(32, 12).Value >= 69 Then .Cells(NRc, 11).Value = Cells(32, 12).Value
If Cells(33, 12).Value >= 69 Then .Cells(NRc, 12).Value = Cells(33, 12).Value
If Cells(35, 12).Value >= 69 Then .Cells(NRc, 13).Value = Cells(35, 12).Value
If Cells(36, 12).Value >= 88 Then .Cells(NRc, 14).Value = Cells(36, 12).Value
End If
End With
End Sub
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 5 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
13/06/2018 18:56 | |
Ti Ringrazio Molto
|
| | Post: 6 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
14/06/2018 14:58 | |
Se potessi quando avrai tempo di spiegare passo x passo il codice da te scritto.... |
| | Post: 3.042 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
14/06/2018 19:05 | |
Buona sera, jjvincentes.
@jjvincentes, in Risposta #11 scrive:
Se potessi quando avrai tempo di spiegare passo x passo il codice da te scritto.
Dim NRc As Long ' Viene definita la Variabile NRc
With Worksheets("PREVISIONI") ' Viene dichiarato il Foglio di lavoro di riferimento per la copia dei Valori
NRc = .Range("A" & .Rows.Count).End(xlUp).Row + 1 ' Verifica la prima Riga vuota nel Foglio di lavoro "PREVISIONI"
If Range("N23").Value >= 60 Or Range("N25").Value >= 45 Or Range("N27").Value >= 57 _ ' esegue il Test nelle varie Celle come da te indicato
Or Range("Q23").Value >= 80 Or Range("Q25").Value >= 80 Or Range("Q27").Value >= 80 Then ' se almeno una delle condizioni è vera, prosegue nel Codice
.Cells(NRc, 1).Value = Cells(3, 1).Value ' copia la Squadra di Casa nel Foglio di lavoro "PREVISIONI"
.Cells(NRc, 2).Value = Cells(3, 3).Value ' copia la Squadra Ospite nel Foglio di lavoro "PREVISIONI"
.Cells(NRc, 15).Value = Cells(31, 17).Value ' copia i Goal fatti nel Foglio di lavoro "PREVISIONI"
.Cells(NRc, 16).Value = Cells(29, 17).Value ' copia i NoGoal nel Foglio di lavoro "PREVISIONI"
If Cells(23, 14).Value >= 60 Then .Cells(NRc, 3).Value = Cells(23, 14).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(25, 14).Value >= 45 Then .Cells(NRc, 4).Value = Cells(25, 14).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(27, 14).Value >= 57 Then .Cells(NRc, 5).Value = Cells(27, 14).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(23, 17).Value >= 80 Then .Cells(NRc, 6).Value = Cells(23, 17).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(25, 17).Value >= 80 Then .Cells(NRc, 7).Value = Cells(25, 17).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(27, 17).Value >= 80 Then .Cells(NRc, 8).Value = Cells(27, 17).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(29, 12).Value >= 85.72 Then .Cells(NRc, 9).Value = Cells(29, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(30, 12).Value >= 85.72 Then .Cells(NRc, 10).Value = Cells(30, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(32, 12).Value >= 69 Then .Cells(NRc, 11).Value = Cells(32, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(33, 12).Value >= 69 Then .Cells(NRc, 12).Value = Cells(33, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(35, 12).Value >= 69 Then .Cells(NRc, 13).Value = Cells(35, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
If Cells(36, 12).Value >= 88 Then .Cells(NRc, 14).Value = Cells(36, 12).Value ' se la condizione è vera, copia il Valore nel Foglio di lavoro "PREVISIONI"
End If ' Conclude le Condizioni "IF"
End With ' Conclude la definizione del Foglio di lavoro di riferimento per la copia dei Valori
A disposizione.
Buona serata.
Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 8 | Registrato il: 24/06/2004
| Utente Junior | excel 2016 | | OFFLINE | |
|
14/06/2018 20:47 | |
Grazie Mille |
|
|