Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: Macro VBA - Excel

  1. #1

    Macro VBA - Excel

    Un saluto prima di tutto....

    Poi il problema....

    Ho una selezione di N celle, disposte in verticale, sulla stessa colonna.

    Devo trovare la riga iniziale e quella finale.
    Per la prima mi basta fare ActiveCell.Row, ma non so trovare l'ultima.
    Come faccio?

    Help!

    Grazie
    Skle'

  2. #2
    Ci sto lavorando adesso...
    e ho incontrato l'ennessimo problema, stupido penso...

    Se metto tramite VBA questa formula:
    Cells(RifRiga, RifColonna).Formula = "=CONTA.NUMERI" & StringaRange
    dove:
    StringaRange ="(K56:K70)"

    per cui la stringa della formula diventa:
    =CONTA.NUMERI(K56:K70)
    che per excel e' giusta...

    Mettendola tramite script mi esce #NOME? nella cella.... perche'??
    Poi se edito la formula normalmente da excel, premendo enter, e lasciandola tale e quale, funziona !


  3. #3
    Originariamente inviato da McAuriel V
    odio questo tipo di linguaggio

    Pure io... pero' devo usare excel per forza...

    cmq uno spunto è .. puoi ricavare quante celle sono selezionate? no nquali.. quante?
    se sai quante e sai l'ultima o la prima... l'altra si ricava con una semplice somma...
    Non so... magari si puo' ricavare, pero' io non so come...
    Trovando quante, sarebbe fatta....

  4. #4
    Utente di HTML.it L'avatar di daryl74
    Registrato dal
    Jun 2001
    Messaggi
    125
    Per la prima cella:

    Se la prima cella che ti interessa è selezionata... allora:

    (Cella iniziale).Select
    PrimaRiga = Activecell.Row
    Selection.End(xlDown).Select
    UltimaRiga = ActiveCell.Row

    Ciao

    Daryl74

  5. #5
    Originariamente inviato da daryl74
    Per la prima cella:

    Se la prima cella che ti interessa è selezionata... allora:

    (Cella iniziale).Select
    PrimaRiga = Activecell.Row
    Selection.End(xlDown).Select
    UltimaRiga = ActiveCell.Row

    Ciao

    Daryl74
    Ho provato, ma non funziona...
    ho meglio il comando End, mi pare di aver capito, che prende si' l'ultima cella della selezione, ma l'ultima in cui ci sia qualcosa dentro.
    A me serve sapere l'ultima, in modo incondizionato dal contnuto.

    Spero di essermi riuscito a spiegare

    Grazie comunque Daryl
    Attendo altre soluzioni, se ne avete.
    Skle'

  6. #6
    UP:quote:

  7. #7
    Utente di HTML.it L'avatar di daryl74
    Registrato dal
    Jun 2001
    Messaggi
    125
    Cosa vuol dire in modo incondizionato dal contenuto???

    Hai tutte celle piene (es. da A15 ad A39) oppure ci sono celle vuote in mezzo (piene da A15 a A21 e piene da A25 ad A39) ????

    Se non hai celle vuote all'interno dell'elenco il codice che ti ho dato funziona benissimo...

    Se invece hai delle celle vuote e vuoi trovare l'ultima cella piena di quella colonna allora:

    Range("A65535").select
    Selection.End(xlUp).Select
    UltimaRiga = ActiveCell.Row

    Tutto qst funziona ovviamente se parliamo di una sola colonna...

    Ciao

    Daryl74

  8. #8
    Non ho ancora provato... ma forse l'ultimo codice che hai scritto funziona....

    Parlando di una sola colonna, seleziono delle celle, e mi serve sapere la prima e l'ultima riga della selezione, sia che nelle celle ci sia scritto qualcosa oppure no.

    Forse sono riuscito a spiegarmi stavolta....

    Comunque, ora provo l'ultimo che hai scritto, e vedo se va bene.
    In caso poi ti chiedo ancora aiuto
    Grazie mille per ora Daryl

    Skle'

  9. #9
    Grazie di nuovo daryl per l'aiuto..

    Ho risolto inserendo uno spazio, nelle celle che devono rimanere vuote. Altrimenti con il codice che mi hai dato si ferma, quando incontra la prima vuota.

    Bene lo stesso.

    Ciao
    Skle':metallica

  10. #10
    Ah...
    gia' che ci sono scrivo anche l'altro problemino che ho, e' una stupidata ma e' molto noioso.

    Inserisco delle formule, in alcune celle, attraverso vba. Sebbene la sintassi delle formule sia corretta, una volta inserite, mi esce nelle celle stesse #NOME? al posto del risultato.

    E non so perche' !!

    Infatti mi basta, andare nel foglio excel, entrare nella cella e premere invio (senza cambiare la formula scritta in vba), perche' la formula funzioni normalmente.

    A cosa e' dovuto sta disfunzione??
    E' fisiologica?

    se mi vuoi ancora aiutare daryl, te ne saro' grato..

    ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.