Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Problema di sintassi per creare file

Ultimo Aggiornamento: 13/10/2020 17:48
Post: 33
Registrato il: 18/03/2020
Età: 56
Utente Junior
2016
OFFLINE
13/10/2020 10:04

Buongiorno a tutti quelli del forum,
in allegato due file che genero con due diversi file excel.
Un file va bene (file txt 2) e lo genero utilizzando la funzione concatena da excel, il secondo (001) lo genero direttamente dalla mcaro scritta in VBA ma che non riesco a far funzionare perchè le scritte constant e constants non sono uguali e nello stesso ordine rispetto al file di testo numero 1. Praticamente dovrei fare in modo che diventi come il file di testo 2.
Il file praticamente esporta il contenuto di una cella dove io inserisco dei dati elaborando il contenuto di due colonne.
Questo funziona prefettamente.
Vi allego anche la Macro che utilizzo.
Potete aiutarmi?
Sono vicino alla soluzione ma non riesco a rendere identici i due file.


Grazie.
Post: 6.095
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
13/10/2020 10:25

Ciao con i file txt non risolviamo niente oltre che sono illeggibili.

inserisci il file excel ed i 2 file txt in un file compresso ed allega il file compresso.

Ciao By Sal (8-D
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 992
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 11:17

Un saluto a tutti.
In effetti manca qualcosa nella costruzione, in particolare mancano tutte le chiusure di /Constants (a parte l'ultima) e /Constant oppure non sono correttamente pareggiate le aperture.
Non conoscendo il progetto presumo che dopo una chiusura /Value ci vada una chiusura di /Constants e /Constant a meno non ci debbano essere l'aperture intermedie ma solo quelle di chiusura finale.

Option Explicit
Sub unisci()
    Dim Ur, x, Rg, Msg
    Ur = Range("A" & Rows.Count).End(xlUp).Row
    Columns("D:F").Clear
    Rg = 2
    For x = 4 To Ur
        Cells(Rg, 4) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Cells(Rg, 5) = Cells(x, 1): Cells(Rg, 6) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Cells(Rg, 5) = Cells(x, 2): Cells(Rg, 6) = "": Rg = Rg + 1
    Next
    Cells(Rg, 4) = "": Rg = Rg + 1
    Cells(Rg, 4) = "": Rg = Rg + 1
    Cells(Rg, 4) = "4.12.12": Rg = Rg + 1
    Cells(Rg, 4) = "": Rg = Rg + 1
    Cells(Rg, 4) = ""
    Ur = Range("D" & Rows.Count).End(xlUp).Row
    For x = 2 To Ur
        Msg = Msg & Cells(x, 4) & Cells(x, 5) & Cells(x, 6)
    Next
    Cells(1, 4) = Msg
    MsgBox "Fatto"
End Sub

[Modificato da rollis13 13/10/2020 11:35]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 33
Registrato il: 18/03/2020
Età: 56
Utente Junior
2016
OFFLINE
13/10/2020 11:25

problema di sintassi per creare file
in allegato i file richiesti.
Grazie.
nel file che genera il file di testo funzionante praticamente ricopio il contenuto delle celle l,m,n 4 che concatena i valori delle tabelle di fianco.
Però il file diventa difficile da gestire se aggiungo altri valori a lla tabella.

Nel secondo, creo la tabella dalle due colonne a sinistra ma nel mio codice c'è un errore e compila male il file. Problema con Constant e Constants.

Credo che non sia difficile ma io sono un pò un neofita e quello che ho fatto lo ho fatto grazie all'aiuto delle persone del forum.
Il file cst non è niente altro che il file di testo rinominato in cst.
Post: 993
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 11:44

Così riscritta dovrebbe andar meglio (se non mi si è ingarbugliato il filo):
Sub unisci_2()
    Dim Ur, x, Rg, Msg
    Ur = Range("A" & Rows.Count).End(xlUp).Row
    Columns("D:F").Clear
    Rg = 2
    Cells(Rg, 4) = "": Rg = Rg + 1
    For x = 4 To Ur
        Cells(Rg, 4) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Cells(Rg, 5) = Cells(x, 1): Cells(Rg, 6) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Cells(Rg, 5) = Cells(x, 2): Cells(Rg, 6) = "": Rg = Rg + 1
        Cells(Rg, 4) = "": Rg = Rg + 1
    Next
    Cells(Rg, 4) = "": Rg = Rg + 1
    Cells(Rg, 4) = "4.12.12": Rg = Rg + 1
    Cells(Rg, 4) = "": Rg = Rg + 1
    Cells(Rg, 4) = ""
    Ur = Range("D" & Rows.Count).End(xlUp).Row
    For x = 2 To Ur
        Msg = Msg & Cells(x, 4) & Cells(x, 5) & Cells(x, 6)
    Next
    Cells(1, 4) = Msg
    MsgBox "Fatto"
End Sub

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
13/10/2020 12:37

https://www.freeforumzone.com/d/11716875/-/discussione.aspx

Ciao a tutti
Se dici l'errore che riscontri?
L'unica cosa che NON sono presenti i due codici, quando salvi, scegli il percorso e digita un nome ex "aaaa" (ci pensa il vba a mettere .cst)
Ho cancelato Private Sub CommandButton1_Click() e riabilitato Sub WINTAX_EXPORT()

Ps. Sul Mio pc NON devo premere AVVISO di sicurezza AGGIORNAMENTO AUTOMATICO perchè s'impalla (Non riesco interromperlo)
Post: 994
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 14:28

Chissà per quale motivo è stata creata una nuova discussione 😲.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 34
Registrato il: 18/03/2020
Età: 56
Utente Junior
2016
OFFLINE
13/10/2020 14:35

Problema di sintassi
Il codice scritto da entrambi andava bene. Sto usando quello che allego a seguire.
Il problema era anche dovuto al fatto che il file che generavo non accetta nella prima colonna nomi e o caratteri spaziati.
Quindi sistemate le maiuscole e riscritto i valori senza spazio, tutto si è risolto per il meglio.
Siete stati di grande aiuto.
Ora come dicevo il codice a seguire è perfetto.
Vi faccio una domanda ulteriore.
Mi piacerebbe fare il processo che ora faccio usando prima il comando tabella e successivamente il comando Constant export, senza riscrivere la tabella ma esposrtarlo direttamente.
E' possibile?
Intanto grazie a entrambi.


Post: 995
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 14:48

Subito dopo la riga:
MsgBox "Fatto"
della prima macro aggiungi un rimando all'altra macro.

PS. anzi, ancora meglio, al posto della riga:
MsgBox "Fatto"
metti il rimando.
[Modificato da rollis13 13/10/2020 14:51]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 35
Registrato il: 18/03/2020
Età: 56
Utente Junior
2016
OFFLINE
13/10/2020 14:55

Problema di sintassi
Buongiorno Rollis per lei è molto semplice per me il messaggio rimando non saprei esattamente come inserirlo.
Post: 996
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 16:42

Puoi scrivere solamente il NomeDellaMacro oppure scrivere Call NomeDellaMacro .
Un semplice Cerca in questo stesso Forum o in Rete ti avrebbe fornito moltissimi suggerimenti utili.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
13/10/2020 17:31

ATTENZIONE al RAR
Post: 997
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
13/10/2020 17:47

Il miei tools anti-malware sono 'migliori' dei tuoi ... NON mi hanno segnalato niente di strano.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 36
Registrato il: 18/03/2020
Età: 56
Utente Junior
2016
OFFLINE
13/10/2020 17:48

Problema di sintassi
Grazie Sig Rollis.
Si farò come ha detto lei e cercherò di ricercare più assiduamente tutte le differenti voci e discussioni del forum per migliorare le mie capacità. O incapacità direi.

Grazie ancora e per quanto mi riguarda il topic è chiuso.

Grazie infinitamente.
[Modificato da Stefano Alx 13/10/2020 21:08]
Vota: 15MediaObject5,00114 1
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 12:55. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com