La consultazione del forum è libera per tutti.
Per poter porre un quesito è invece necessario essere un utente registrato (clicca qui se non lo sei).
Tutti gli utenti che richiedono un supporto, come da REGOLAMENTO, sono caldamente invitati ad allegare un file di esempio con l'indicazione di quello che si desidera ottenere.
Ciao,
chiedo aiuto per creare questa macro.
Devo inserire la formula Se in VBA ma le variabili sono un po' tantine quindi al momento uso 5 se con il massimo delle variabili possibili e mi si allunga di tantissimo il lavoro.
cerco di spiegarmi al meglio.
Se B2 inizia con MAR allora nella cella D2 devo scrivere MARE
Se B2 inizia con MARI allora nella cella D2 devo scrivere MARITTIMO
Se B2 inizia con DAVID allora nella cella D2 devo scrivere DAVIDE
Se B2 inizia con FORM allora nella cella D2 devo scrivere FUNZIONE SEPARATA
e così via per almeno 18 varibiabili di se differenti.
grazie per l'aiuto
V.
vi chiedo il codice completo da copiare ed incollare in VBA Excel 2016
Comodo, eh?
Puoi usare la funzione Select Case/End Select che non ha restrizioni di numero di test.
Naturalmente devi intercettare la variazione in B2 per avviare automaticamente la macro. Questo si fa con Target.
Come farlo? Provaci.
Ciao a tutti,
@vipvis ho notato che non è la prima volta che pubblichi le discussioni come "private"... in questo modo le possono vedere solo i moderatori e ti precludi le risposte di altri utenti esperti.
Le ultime due tue discussioni le ho convertite a "pubbliche".
"Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."
buongiorno a tutti, mi presento:
sono mattia e sono nuovo nel forum
ho un quesito che mi risolverebbe tempo prezioso a lavoro
se per favore mi potete aiutare
ho due file uno che si Chiama Zuteil dove devo importare dei dati dal secondo file che ha sempre la stessa impostazione ma cambia il nome
nel file Zuteil mi deve importare i codici della riga A (che possono aumentare o diminuire) in colonna A dalla riga 2 in giù
deve anche importare i valori della colonna del codice importato del secondo file nella colonna F di Zuteil e i valori del secondo file della colonna A corrispondenti al valore nel file Zuteil nella colonna E
ho provato con questo codice ma non ne esco mi aiutate per favore ?
Sub Importare1658()
'
' Importare1658 Macro
'
'
Windows("FILE SPOT KW 49.xlsx").Activate
Range("A1").Select
Selection.End(xlToRight).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.End(xlToLeft).Select
Selection.End(xlToRight).Select
Application.CutCopyMode = False
Selection.Copy
Windows("ZUTEIL_Test.xlsx").Activate
Range("A2:A60").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("FILE SPOT KW 49.xlsx").Activate
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Marciano").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Marciano").AutoFilter.Sort.SortFields.Add Key:= _
Range("F2"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Marciano").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Selection.End(xlDown).Select
Range(Selection, Selection.End(xlUp)).Select
Range("F3:F5").Select
Range("F5").Activate
Selection.Copy
Windows("ZUTEIL_Test.xlsx").Activate
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("FILE SPOT KW 49.xlsx").Activate
Selection.End(xlToLeft).Select
Range(Selection, Selection.End(xlUp)).Select
Range("A3:A5").Select
Range("A5").Activate
Application.CutCopyMode = False
Selection.Copy
Windows("ZUTEIL_Test.xlsx").Activate
Range("E2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Windows("FILE SPOT KW 49.xlsx").Activate
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Selection.End(xlToRight).Select
Columns("F:F").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Windows("ZUTEIL_Test.xlsx").Activate
Selection.End(xlDown).Select
Range("E5").Select
Selection.End(xlToLeft).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Selection.End(xlUp).Select
Range("A5").Select
End Sub
Ciao Manicomio. Mi pare il tuo nick rappresenti bene la confusione. Innanzitutto questa è una nuova discussione e tu l'hai accodata ad una vecchia. Ho chiesto all'Admin di spostarla in nuova. Nel frattempo sarebbe più semplice dire: dal file 618 devo importare in Zuteil le colonne X Y Z nelle colonne W K J. Dici che i due file hanno la stessa impostazione ma non sembra.
"nel file Zuteil mi deve importare i codici della riga A (che possono aumentare o diminuire) in colonna A dalla riga 2 in giù" I codici di 618 sono nella colonna A? Cioè 2, 4, 11, 18, 21, ...? In quale colonna di Zuteil dovrebbe importarli? Nella A? Ma quella contiene già dei codici!
"deve anche importare i valori della colonna del codice importato del secondo file nella colonna F di Zuteil". Quali sono i valori del codice? "Valori" non dice nulla.
"i valori del secondo file della colonna A corrispondenti al valore nel file Zuteil nella colonna E". Di nuovo i codici 2, 4, 11, 18, 21, ... che in teoria sono già importati precedentemente.
Chiama i file col loro nome e non primo, secondo, terzo. Al mio paese c'erano nove fratelli che si chiamavano da Primo a Nono. Quelli erano chiari, questo no. Aspettiamo che l'Admin sposti (o no) in nuova conversazione e poi procediamo. Nell'attesa riformula il testo: da 618 colonna "A" a Zuteil colonna "X". Da 618 colonna "F" a Zuteil colonna "Y". Indica anche se si tratta di nuova colonna (e dove inserirla) o se deve sovrascrivere i dati contenuti nella colonna (quale?) di destinazione. Grazie.
@emme ciao e scusate per la confusione 😀
specifico meglio, il file che si chiama Zuteil non cambia mai ne di nome ne di contenuto mentre il file che si chiama File-xlsx cambiano i valori (aumentando di colonne e righe o diminuendo) e anche il nome del file.
nel file Zuteil vorrei importare i valori così:
nella colonna A il primo codice che si trova nella riga 1 del file che si chiama Filexlsx ripetuto per i valori presenti nella sua colonna e quindi i codici della colonna A (no righe vuote, del file xlsx) corrispondenti in colonna E
Faccio fatica a comprendere. Ti allego il file RisultatoForse.xlsx che dovrebbe essere corretto in base alla traduzione delle tue indicazioni, anche se la funzione mi rimane oscura.
Non esegue niente, è solo un "campione" di come dovrebbe uscire in base alle tue indicazioni (cosa succederà alle successive righe/celle di File.xlsx non è noto).
@emme ciao e scusa,
la stanchezza mi gioca brutti scherzi,
nel file ZUTEIL che ti ho allegato mi sono scordato di eliminare tutti i dati tranne la riga 1
nell'altro file (solo Foglio MARCIANO) devo estrarre in questo ordine i dati:
abbiamo la colonna A con il cc che sarebbe il codice della filiale (di FILE) che corrisponde alla colonna E (di ZUTEIL) che è sempre filiale anche se con denominazione diversa.
nella riga 1 del file denominato FILE abbiamo i codici articoli con sotto la loro descrizione che devo importare nel file ZUTEIL in colonna A
sto lavorando ancora con questo codice ma non ne esco (sono ancora principiante per ora)
vorrei che dalla RIGA 3 mi importasse i valori nel file ZUTEIL prendendo i dati in ordine ad es.
dalla riga 3 del file denominato FILE:
prende il CC e lo mette in colonna E dello ZUTEIL
prende i valori in ordine della riga 3 di FILE e li importa in ZUTEIL in colonna F (Sarebbero le quantità)
prende il codice della riga 1 del file che si chiama FILE in corrispondenza della quantità che ha importato in colonna F di ZUTEIL
tipo in FILE il CC 2 in colonna E,quindi il 119525 in colonna A , 2 in colonna F ETC..
Verrebbe così? E nelle colonne B C D cosa ci metti?
@emme se puoi mandarmi il codice così vedo anche come hai fatto, e grazie infinite
Bene, un primo risultato è ottenuto. In questo momento sono impegnato e ho bisogno di un po' di tempo per risolvere la cosa. Ultima domanda: dato il risultato immagino che Zuteil vada prima ripulito da tutto per poi ritrovarlo con i soli dati importati. Giusto?
@emme giusto, considera che il file di nome FILE cambia, ma solo di denominazione e possono aumentare o diminuire le colonne e le righe
Ti allego il file xlsm che sostituisce xlsx.
Attenzione:
file ricevente Zuteil.xlsm e file(s) donatori (xy.xlsx) devono obbligatoriamente risiedere nella stessa cartella.
Click su Avvia importazione
Verrà richiesto il file (nella cartella) contenente i dati (anche uscita senza altra azioni). Quindi il foglio da cui importare i dati (anche uscita senza altra azioni).
3 secondi di attesa e fine.
Fammi sapere e se va bene chiudi discussione, grazie.