Acquista i nostri libri consigliati su Amazon.it
Discussione chiusa
Pagina 1 di 3 123 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24

Ripetere un'operazione if più volte

  1. #1
    nox_ non è in linea Scolaretto
    Post
    68
    Like Inviati  
    0
    Like Ricevuti  
    0
    Salve ragazzi ho un problema che credo voi mi risolviate in un lampo.
    Ho creato una macro, la seguente:

    Sub Prova()
    Dim P As Workbook
    Set P = Workbooks.Open("C:....")


    If ThisWorkbook.Worksheets("es").Range("E9").Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("9:9").Copy
    P.Worksheets("kimi").Range("a65536").End(xlUp).Off set(1, 0).PasteSpecial Paste:=xlPasteValues
    If ThisWorkbook.Worksheets("es").Range("E9").Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("9:9").Delete


    Application.CutCopyMode = False

    P.Save
    P.Close
    Application.ScreenUpdating = True

    RigaChiusura:
    Set es = Nothing



    End Sub


    Ora dovrei ripetere l'operazione if :
    ( If ThisWorkbook.Worksheets("es").Range("E9").Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("9:9").Copy
    P.Worksheets("kimi").Range("a65536").End(xlUp).Off set(1, 0).PasteSpecial Paste:=xlPasteValues
    If ThisWorkbook.Worksheets("es").Range("E9").Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("9:9").Delete )

    per tutte le altre righe, ma non ci rieco.
    Ho provato qualcosa così:

    Dim i As Integer
    i = 9
    For i = 9 To 1000

    If ThisWorkbook.Worksheets("es").Range("e" & i).Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("i:i").Copy
    P.Worksheets("kimi").Range("a65536").End(xlUp).Off set(1, 0).PasteSpecial Paste:=xlPasteValues
    If ThisWorkbook.Worksheets("es").Range("e" & i).Value = "Ok" Then ThisWorkbook.Worksheets("es").Rows("i:i").Delete

    Next

    Ma non va mi da errore 400
    Come risolvo?
    Grazie

  2. #2
    Post
    17,506
    Blogs
    6
    Like Inviati  
    6
    Like Ricevuti  
    35
    Ma lavori con VB6 o VBA per Excel ?
    ℹ️ Leggi di più su AntonioG ...

  3. #3
    nox_ non è in linea Scolaretto
    Post
    68
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao Antonio,
    grazie di avermi risposto.
    VBA per Excel.

  4. #4
    Post
    17,506
    Blogs
    6
    Like Inviati  
    6
    Like Ricevuti  
    35
    Quindi questa non è la sezione giusta ... qui si parla di VB6.

    Sposto io il thread ...
    ℹ️ Leggi di più su AntonioG ...

  5. #5
    nox_ non è in linea Scolaretto
    Post
    68
    Like Inviati  
    0
    Like Ricevuti  
    0
    Nessuno che mi può aiutare?

  6. #6
    nox_ non è in linea Scolaretto
    Post
    68
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ragazzi un aiuto

  7. #7
    L'avatar di @Alex
    @Alex non è in linea Moderatore Globale
    Post
    16,830
    Like Inviati  
    0
    Like Ricevuti  
    25
    Prima di tutto gli UP oltretutto ripetuti sono molto brutti... significa peraltro che tu di tuo non hai fatto un minimo sforzo nè per capire il problema nè ti sei messo in dubbio sulla eventuale chiarezza espositiva..., quindi solleciti una risposta...?

    MMMmmm

    Detto questo hai DEBUGGATO il tuo codice...?
    Che test hai fatto per capire l'errore...?
    Dove si blocca...?

    Ti passo solo 1 indicazione...
    Prova a dirci cosa ti aspetti da questa stringa
    ThisWorkbook.Worksheets("es").Rows("i:i").Copy
    
    in particolare mi riferisco all'argomento della collection ROWS... cosa pensi venga valorizzato in quella stringa nel ciclo
    ("i:i")
    
    In realtà non devi immaginare o andare a tentativi..., buonsenso a parte, devi fare DEBUG... con BreackPoint e seguire STEP to STEP ogni singola operazione per vedere se
    quello che ti aspetti è quello che veramente viene eseguito...!

    Una stringa
    "i:i"
    
    non cambierà nel ciclo... è una stringa... e le 2 [i] contenute nella stringa non verranno mai sostiutite dal valore di [i] del ciclo... non sono interpretate sono solo 2 caratteri in una stringa....!!!!!!
    Altrimenti se al posto di quello scrivi
    ("INDIANI")
    
    ... ad ogni ciclo la [I] dovrebbe essere sostituita dal Numero assegnato alla variabile [i]...!!!
    0ND0AN0
    1ND1AN1
    ....
    
    ERRORE OVVIAMENTE.

    Riassumendo devi avere un minimo intraprendenza ed effettuare l'autoDEBUG.
    Non sei capace...?

    LEGGI CON ATTENZIONE QUESTO:----->http://forum.masterdrive.it/access-7...s-debug-44533/
    scritto per Access, ma il metodo e la logica di DEBUG VBA è equivalente...
    Ultima modifica di @Alex; 23-10-2012 20:07 
    ℹ️ Leggi di più su @Alex ...

  8. #8
    Post
    17,506
    Blogs
    6
    Like Inviati  
    6
    Like Ricevuti  
    35
    Quote Originariamente inviato da nox_ Visualizza il messaggio
    Ragazzi un aiuto
    Cerchiamo di evitare gli "up" giornalieri ... non servono ad avere più risposte, anzi, sono controproducenti.
    ℹ️ Leggi di più su AntonioG ...

  9. #9
    nox_ non è in linea Scolaretto
    Post
    68
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao antonio,
    scusa per gli up.
    Per il resto:
    il debug si ha proprio sulla stringa che hai scritto tu.
    Non è che non sto provando come dici tu, lo dimostra la stringa ( è una delle tante prove ).
    Ne ho provate tante e se chiedo un aiuto è proprio perchè non sono arrivato alla soluzione. Ora dirmi che sono incapace non aiuta per niente, lo so altrimenti non avrei chiesto aiuto.
    Grazie Antonio

  10. #10
    Post
    17,506
    Blogs
    6
    Like Inviati  
    6
    Like Ricevuti  
    35
    Quote Originariamente inviato da nox_ Visualizza il messaggio
    ... che hai scritto tu.
    Io ho solo segnalato gli up ... per il resto devi rivolgerti ad Alex, che è chi ti ha risposto ...
    ℹ️ Leggi di più su AntonioG ...

Discussione chiusa
Pagina 1 di 3 123 ultimoultimo

Potrebbero interessarti anche ...

  1. ripetere x volte la data
    Da daninesh nel forum Microsoft Excel
    Risposte: 1
    Ultimo Post: 16-11-2016, 01:22
  2. Ripetere un'operazione if più volte
    Da nox_ nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 22-10-2012, 17:26
  3. ripetere una macro un numero definito di volte
    Da syymo nel forum Microsoft Word
    Risposte: 3
    Ultimo Post: 07-05-2010, 16:05
  4. il notebook toshiba satellite a volte si accende a volte no
    Da andi001 nel forum Hardware, elettronica e retro-computing
    Risposte: 1
    Ultimo Post: 19-01-2009, 13:04
  5. [WORD] Ripetere 4 volte una macro.
    Da tenebra nel forum Microsoft Word
    Risposte: 1
    Ultimo Post: 02-09-2008, 11:49