Note: The other languages of the website are Google-translated. Back to English
Login  \/ 
x
or
x
Registrati  \/ 
x

or

Come cercare / trovare valori in un'altra cartella di lavoro?

Questo articolo parla di come cercare valori e restituire dati da un'altra cartella di lavoro e come trovare / cercare valori da un'altra cartella di lavoro. Qui presenterò tre soluzioni in dettaglio.


Dati di Vlookup e valori restituiti da un'altra cartella di lavoro in Excel

Ad esempio, stai creando una tabella Acquisto di frutta in Excel e ora devi visualizzare i frutti da un'altra cartella di lavoro e restituire i prezzi corrispondenti come mostrato di seguito. Qui ti guiderò a risolverlo con la funzione CERCA.VERT in Excel.

1. Aprire entrambe le cartelle di lavoro da cui verranno visualizzati i valori e in cui restituiranno i valori.

2. Seleziona una cella vuota in cui restituirai il prezzo, digita la formula = CERCA.VERT (B2, [Price.xlsx] Foglio1! $ A $ 1: $ B $ 24,2, FALSO) in esso, quindi trascina la sua maniglia di riempimento per applicare questa formula all'intervallo di cui hai bisogno.

Note:
(1) Nella formula sopra, B2 è il frutto che si cercherà da un'altra cartella di lavoro, Price.xlsx indica il nome del file della cartella di lavoro da cui si cercherà, Foglio1 indica il nome del foglio da cui si cercherà e A $ 1 : $ B $ 24 è l'intervallo da cui guarderai. Puoi cambiarli secondo le tue necessità.
(2) Dopo aver chiuso la cartella di lavoro da cui hai cercato, la formula si aggiornerà automaticamente a = CERCA.VERT (B2, 'W: \ test \ [Price.xlsx] Sheet1'! $ A $ 1: $ B $ 24,2, FALSE), W: \ test \ è il percorso di salvataggio della cartella di lavoro da cui hai cercato.

Finora, tutti i prezzi sono stati restituiti correttamente come mostrato nell'immagine a sinistra. E questi prezzi si aggiorneranno automaticamente se la cartella di lavoro originale hai cercato dalle modifiche.

nota nastro La formula è troppo complicata da ricordare? Salva la formula come una voce di testo automatico per riutilizzarla con un solo clic in futuro!
Per saperne di più ...     Versione di prova gratuita

Dati di Vlookup e valori restituiti da un'altra cartella di lavoro chiusa con VBA

Potrebbe essere una cucciolata confusa configurare il percorso di salvataggio, il nome del file e il foglio di lavoro nella funzione CERCA.VERT. Questo metodo introdurrà un VBA per risolverlo facilmente.

1. premi il altro + F11 tasti per aprire la finestra di Microsoft Visual Basic, Applications Edition.

2. Fare clic sul inserire > Modulo, quindi incolla sotto il codice VBA nella finestra del modulo di apertura.

VBA: dati Vlookup e valori restituiti da un'altra cartella di lavoro chiusa

Private Function GetColumn(Num As Integer) As String
If Num <= 26 Then
GetColumn = Chr(Num + 64)
Else
GetColumn = Chr((Num - 1) \ 26 + 64) & Chr((Num - 1) Mod 26 + 65)
End If
End Function
Sub FindValue()
Dim xAddress As String
Dim xString As String
Dim xFileName As Variant
Dim xUserRange As Range
Dim xRg As Range
Dim xFCell As Range
Dim xSourceSh As Worksheet
Dim xSourceWb As Workbook
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xUserRange = Application.InputBox("Lookup values :", "Kutools for Excel", xAddress, Type:=8)
If Err <> 0 Then Exit Sub
Set xUserRange = Application.Intersect(xUserRange, Application.ActiveSheet.UsedRange)
xFileName = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 1, "Select a Workbook")
If xFileName = False Then Exit Sub
Application.ScreenUpdating = False
Set xSourceWb = Workbooks.Open(xFileName)
Set xSourceSh = xSourceWb.Worksheets.Item(1)
xString = "='" & xSourceWb.Path & Application.PathSeparator & _
"[" & xSourceWb.Name & "]" & xSourceSh.Name & "'!$"
For Each xRg In xUserRange
Set xFCell = xSourceSh.Cells.Find(xRg.Value, , xlValues, xlWhole, , , False)
If Not (xFCell Is Nothing) Then
xRg.Offset(0, 2).Formula = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row
End If
Next
xSourceWb.Close False
Application.ScreenUpdating = True
End Sub
Osservazioni:: Questo VBA restituirà i valori in una colonna che si trova a 2 colonne dietro la colonna selezionata. Ad esempio, seleziono la colonna B quando applico questo VBA, i valori torneranno nella colonna D. Se è necessario modificare la colonna di destinazione, scoprire il codice xRg.Offset (0, 2) .Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row e sostituisci 2 ad altro numero di cui hai bisogno.

3. premi il F5 o fare clic su Correre pulsante per eseguire questo VBA.

4. Nella finestra di dialogo di apertura, specificare l'intervallo di dati da cercare e fare clic su OK pulsante.

5. Ora selezionare la cartella di lavoro in cui si cercheranno i valori nella finestra di dialogo Seleziona una cartella di lavoro di apertura e fare clic su Apri pulsante.

Ora tutti i valori selezionati vengono cercati nella cartella di lavoro chiusa specificata e i valori corrispondenti vengono restituiti nella colonna specificata. Vedi screenshot:


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    leigh_87 · 2 years ago
    Hi this works great thanks! Would it be at all possible to show me how i would change the code if i have the workbook open that i would like to lookup the data in?