Torna indietro   Hardware Upgrade Forum > Software > Programmazione

ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondono completezza e duttilità
ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondono completezza e duttilità
NUC 15 Pro e NUC 15 Pro+ sono i due nuovi mini-PC di casa ASUS pensati per uffici e piccole medie imprese. Compatti, potenti e pieni di porte per la massima flessibilità, le due proposte rispondono in pieno alle esigenze attuali e future grazie a una CPU con grafica integrata, accompagnata da una NPU per la gestione di alcuni compiti AI in locale.
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-12-2003, 09:26   #1
peppequo
Senior Member
 
L'Avatar di peppequo
 
Iscritto dal: Dec 1999
Città: Ostia/Padova
Messaggi: 1024
Problema macro in Excel

In un foglio Excel ho fatto una macro che effettua dei calcoli sulle
varie cartelle che lo compongono.
Il problema è questo:
In una delle cartelle ho un numero di righe che può variare di volta in
volta.
Nella colonna "E" c'è il progressivo di riga, quindi nella macro ho inserito

Dim Indx As Integer
Range("F1").Select
ActiveCell.FormulaR1C1 = "=MAX(C[-1])"
Indx = ActiveCell.Value

A questo punto mi ritrovo in Indx il numero di righe che ho effettivamente
valorizzate.
Come faccio a selezionare tutte, e solo!!!!, le righe valorizzate?
All'inizio sapendo che non avrò mai più di 10000 righe avevo fatto

Range("A1:E10000").Select

ma vorrei perfezionare la cosa.
Ho provato con

Range("A1:EIndx").Select

Ma in esecuzione prendo l'errore
Metodo 'Range' dell'oggetto '_Global' non riuscito


Grazie e a buon rendere !!

Ultima modifica di peppequo : 18-12-2003 alle 09:30.
peppequo è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2003, 12:22   #2
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
Re: Problema macro in Excel

alla spicciolata

se lo converti a questo modo se a posto


Range(Cells(1, 1), Cells(10, 10)).Select
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2003, 15:00   #3
peppequo
Senior Member
 
L'Avatar di peppequo
 
Iscritto dal: Dec 1999
Città: Ostia/Padova
Messaggi: 1024
Se utilizzo la tua formula così come l'hai scritta funziona ma se io sostituisco uno dei valori con una variabile mi dà errore.

Altri suggerimenti???
peppequo è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2003, 22:09   #4
robnet77
Senior Member
 
L'Avatar di robnet77
 
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
selection.end(xlDown).select

restituisce il "fine-giù", praticamente tu ti posizioni su A1, esegui il comando qua sopra, a questo punto il codice ti porta nell'ultima casella della colonna A che è stata "riempita".

Per intercettare questa casella, puoi usare il comando:

activeCell.row

che rappresenta la riga corrente,

oppure puoi provare a usare l'espressione:

.UsedRange per selezionare l'area corrente di lavoro, se vuoi domani posso fornirti qualche esempio, ciao
robnet77 è offline   Rispondi citando il messaggio o parte di esso
Old 19-12-2003, 06:49   #5
peppequo
Senior Member
 
L'Avatar di peppequo
 
Iscritto dal: Dec 1999
Città: Ostia/Padova
Messaggi: 1024
Te ne sarei grato, grazie.
Nel frattempo provo con quanto mi hai detto.
peppequo è offline   Rispondi citando il messaggio o parte di esso
Old 19-12-2003, 06:58   #6
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
Quote:
Originariamente inviato da peppequo
Se utilizzo la tua formula così come l'hai scritta funziona ma se io sostituisco uno dei valori con una variabile mi dà errore.

Altri suggerimenti???

l'importante è l'idea; poi è sufficiente unire quanto espresso da robnet77 ed il tutto diventa:
Codice:
rigaultimacella = activeCell.row 
colonnaultimacella = activeCell.col

Range(Cells(1, 1), Cells(rigaultimacella , colonnaultimacella )).Select
occhio che non ho provato il codice postato.........

ok ?
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 19-12-2003, 08:25   #7
robnet77
Senior Member
 
L'Avatar di robnet77
 
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
ti riporto una parte di una macro che ho fatto tempo fa, è commentata il minimo indispensabile, ma penso ti sia sufficiente, eventualmente chiedi pure, anche se non sono certo un esperto di programmazione, ciao

Codice:
'rintraccia l'ultima riga del foglio di lavoro
    Range("a1").Select
    Selection.End(xldown).Select
    UltimaRiga = ActiveCell.Row
    
    'cerca verticale e copia formula nelle celle in basso
    Range("O2").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],nover.xls!nover,2,FALSE)"
    Selection.Copy
    Range("O3", "O" & UltimaRiga).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    
    'ordina dati per colonna "O" decrescente, per mettere i "NO" in fondo
    Cells.Select
    Range("D1").Activate
    Selection.Sort Key1:=Range("O2"), Order1:=xlDescending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    
   
   
   'trova il primo "NO" tra i valori nella colonna "O"
    Columns("O: O").Select
    Range("O97").Activate
    Selection.Find(What:="no", After:=ActiveCell, LookIn:=xlValues, LookAt _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False).Activate
    PrimarigaNo = ActiveCell.Row
    Selection.End(xldown).Select
    UltimarigaNo = ActiveCell.Row
    Range("A" & PrimarigaNo, "O" & UltimarigaNo).Select
    Selection.Delete shift:=xlUp
robnet77 è offline   Rispondi citando il messaggio o parte di esso
Old 19-12-2003, 08:28   #8
robnet77
Senior Member
 
L'Avatar di robnet77
 
Iscritto dal: Oct 2001
Città: Dublino
Messaggi: 878
Columns("O: O").Select


nella riga che ho riportato qua sopra, ho aggiunto uno spazio dopo aver postato, visto che il codice VB lo aveva interpretato come una faccina

p.s. ma non è possibile escludere le faccine dai tag [code]?
robnet77 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondono completezza e duttilità ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondo...
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento Acer TravelMate P6 14 AI: il Copilot+ PC sotto i...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
Ecco il nuovo Amazon Luna: videogiochi p...
ISRO: prosegue lo sviluppo della navicel...
CoD Black Ops 7 offrirà la beta p...
Il telescopio spaziale James Webb sta ai...
Crucial spinge sui moduli LPCAMM2: fino ...
Imgur blocca gli utenti del Regno Unito:...
ROG Xbox Ally già in consegna: qu...
Ubisoft annuncia Vantage Studios: Assass...
Il solare diventa la prima fonte di elet...
Google Home si rinnova completamente: ar...
Dense Geometry Format (DGF): novit&agrav...
Gemini for Home arriva a ottobre sui dis...
Amazon Smart Air Quality Monitor: a soli...
Mazzata Raspberry Pi, i prezzi aumentano...
Amazon Seconda Mano - Warehouse: extra s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:49.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v