| | Post: 126 | Registrato il: 06/07/2016
| Città: BOLZANO | Età: 31 | Utente Junior | 2010 | | OFFLINE | |
|
08/10/2019 12:48 | |
ciao a tutti
avrei bisogno del vostro aiuto desidererei una macro da poter lanciare con pulsante che confronti il valore orario contenuto nella cella A1 (del foglio 1 ) col range ( F11 : Al23 del foglio 2 ) e copi il valore della cella B 1 (FOGLIO 1 ) inserendolo nella riga 13 sotto lil giusto orario come da esempio : ( valore copiato 17 alle 11:30 ) lasciando sempre solo l’ultimo valore copiato
Grazie grazie
saluti
Marilena |
|
| | Post: 5.762 | Registrato il: 14/11/2004
| Utente Master | Office 2019 | | OFFLINE |
|
08/10/2019 16:47 | |
Ciao non so se ho capito bene, ma non ce bisogno di una macro, bastano le funzioni di Excel.
Una Convalida per l'orario ed un Cerca:Orizz() per il valore, non tutti lo usano, ma esiste anche quello.
eccoti il file con le due funzioni, basta che scegli l'orario con la convalida che avrai il valore corrispondente del foglio2.
Ciao By Sal
[Modificato da by sal 08/10/2019 16:48] se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui |
| | Post: 3.501 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
08/10/2019 17:27 | |
Buon pomeriggio, Marilena; se ho interpretato correttamente la tua richiesta, credo potresti provare nel Foglio di lavoro "Foglio2", in Cella "F13": =SE(F$11=Foglio1!$A$1;Foglio1!$B$1;"") da copiare nelle Celle a destra fino a Cella "AL13" A disposizione. Buona serata. Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 3.502 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
08/10/2019 20:30 | |
Buona sera, Marilena; mi è sorto un dubbio, quando scrivi: @Mary-92, svrive:
... range ( F11 : AL23 del foglio 2 ) ...
- Cosa significa? - Che riferimenti ci sono nelle Righe 12 ÷ 23 ? Il mio dubbio è che, se i riferimenti in Riga 11 sono univoci ma i Valori riportati nelle Righe sottostanti sono variabili non solo nella Riga 13 ma anche nelle altre righe non ci possono essere Formule ma, necessariamente, si deve ricorrere ad un Codice VBA. Se puoi chiarire più compiutamente la tua richiesta te ne sarei grato. Grazie dell'attenzione che potrai dedicare a queste mie domande. Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 126 | Registrato il: 06/07/2016
| Città: BOLZANO | Età: 31 | Utente Junior | 2010 | | OFFLINE | |
|
09/10/2019 10:55 | |
Grazie Giuseppe e By Sal
mi scuso ma è stato un mio errore ,il range corretto è F11 : AL11
i riferimenti in riga 11 sono univoci mentre quelli che vengono riportati in riga 13 sono il risultato di una formula inserita nella cella B1 del foglio 1 che variano di volta in volta .
se possibile avrei preferito una soluzione in vba perchè mi avrebbe permesso di riportare il valore solo agendo sul pulsante
mentre la formula lo fa sempre in automatico
saluti
Marilena |
| | Post: 2.415 | Registrato il: 06/04/2013
| Utente Veteran | 2010 | | OFFLINE |
|
09/10/2019 11:25 | |
Ciao
Sub Aggiorna()
Dim wkF As Worksheet, wkT As Worksheet, mRng As Range
Set wkF = Worksheets("Foglio1")
Set wkT = Worksheets("Foglio2")
ora = wkF.Range("A1")
valore = wkF.Range("B1")
Set mRng = wkT.Range("A11:AL11")
colonna = Application.Match(ora, mRng, 0)
wkT.Cells(13, colonna) = valore
End Sub
Saluti
Domenico
Win 10 - Excel 2016 |
| | Post: 3.503 | Registrato il: 03/04/2013
| Utente Master | Excel 2000 - 2013 | | OFFLINE | |
|
09/10/2019 11:35 | |
Buona giornata, Marilena;
a mio modesto parere la soluzione con Formule è da preferire ma visto che "Il Cliente ha sempre ragione" allego un Codice VBA che potrebbe esserti utile.
Option Explicit
Sub Aggiorna()
Application.ScreenUpdating = False
Dim Ulc As Long, x As Long
Sheets("Foglio2").Select
With Worksheets("Foglio1")
Ulc = Cells(11, Columns.Count).End(xlToLeft).Column
Range(Cells(13, 6), Cells(13, Ulc)).ClearContents
For x = 6 To Ulc
If Cells(11, x).Value = .Cells(1, 1).Value Then
Cells(13, x).Value = .Cells(1, 2).Value
Exit For
End If
Next x
End With
Application.ScreenUpdating = True
Cells(13, x).Select
End Sub
Buona Lavoro.
Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013 |
| | Post: 127 | Registrato il: 06/07/2016
| Città: BOLZANO | Età: 31 | Utente Junior | 2010 | | OFFLINE | |
|
09/10/2019 13:34 | |
SPLENDIDO GRAZIE |
|
|