Excel VBA přidat hodnoty z jiného listu Vyřešeno
- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Excel VBA přidat hodnoty z jiného listu
V jednom souboru mám jména a adresy v druhém mám mám jména a emailové adresy. Potřeboval bych přetáhnout emailové adresy do prvního soubor do 3. sloupce. Data jsou na přeskáčku, takže bych to potřeboval porovnat podle jména a jeho základě přidat email. Pomůže mi někdo?
			
									
									
						- 
				navstevnik
 - Level 4

 - Příspěvky: 1142
 - Registrován: srpen 08
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Nepotrebujes VBA, oba sesity jsou otevreny, do prvniho sesitu do bunky C1 vloz: =SVYHLEDAT(A1;[Sešit2]List1!$A$1:$B$5;2;NEPRAVDA) a kopiruj do dalsich bunek sloupce C:C
			
									
									
						- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Ale to mi tam zůstane vzor ne? Ten já tam nepotřebuji, proto bych byl radši za VBA
			
									
									
						- 
				navstevnik
 - Level 4

 - Příspěvky: 1142
 - Registrován: srpen 08
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Po doplneni vyber cely sloupec, Ctrl+c a podle verze Excelu si najdi Upravy>Vlozit jinak>Hodnoty nebo Domu>Vlozit>Vlozit jinak>Hodnoty
			
									
									
						- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
To se mi zdá zbytečně složitý, makro by to řešilo rychleji a pohodlněji
			
									
									
						- 
				navstevnik
 - Level 4

 - Příspěvky: 1142
 - Registrován: srpen 08
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Jiste, pokud ti to makro napise nekdo jiny a prinese na zlatem podnose, to bude rychlejsi a hlavne pohodlnejsi
			
									
									
						- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Omlouvám se, kdybych to uměl sám tak s tím nikoho neotravuji, ale když nevím ani jak začít. Zapomeň na to, zkusím si to někde najít na internetu.
			
									
									
						- 
				navstevnik
 - Level 4

 - Příspěvky: 1142
 - Registrován: srpen 08
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Citis se zbytetecne urazeny.
Pro dany ucel pozadovat makro je chodit s kanonem na vrabce. Napsani i toho nejjednodussiho makra zabere vice casu a je na to potreba mnohem vice uderu na klavesnici ( deklarace promennych, prirazeni hodnot, pripadne otevreni druheho sesitu vcetne osetreni chyb, prohledavani ve druhem sesitu ve smycce,... pokud ma procedura radne fungovat a to pomijim interakci mezi uzivatelem a programem pri zadavani vstupnich parametru, pokud neni zadouci, aby uzovatel zadaval parametry do procedury), nez pouziti funkci listu, kde postaci par kliku na mys.
Pokud jse o zacatky psani procedur VBA, pak zacni treba zde: http://www.officir.ic.cz/excelentne.html nebo http://www1.osu.cz/studium/vawin/~studijni.opory/
			
									
									
						Pro dany ucel pozadovat makro je chodit s kanonem na vrabce. Napsani i toho nejjednodussiho makra zabere vice casu a je na to potreba mnohem vice uderu na klavesnici ( deklarace promennych, prirazeni hodnot, pripadne otevreni druheho sesitu vcetne osetreni chyb, prohledavani ve druhem sesitu ve smycce,... pokud ma procedura radne fungovat a to pomijim interakci mezi uzivatelem a programem pri zadavani vstupnich parametru, pokud neni zadouci, aby uzovatel zadaval parametry do procedury), nez pouziti funkci listu, kde postaci par kliku na mys.
Pokud jse o zacatky psani procedur VBA, pak zacni treba zde: http://www.officir.ic.cz/excelentne.html nebo http://www1.osu.cz/studium/vawin/~studijni.opory/
- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Tak ono z tvého předchozího příspěvku to vyznělo jako když jsem nějaký mizera co chce koláče bez práce. Já jsem jen chtěl nasměrovat kde začít s takovouhle funkcí, nějaké základy mám, ale tohle je pro mě ještě "everest". Spusit nahrávání makra při přepnutí sešitu a následně dát hledat údaj bych věděl jak to upravit, ale nevím jak připsat, aby mi zkopíroval buňku s relativní adresou a následně ji doplnil do prvního sešitu a pokračoval na další řádek.
			
									
									
						- 
				navstevnik
 - Level 4

 - Příspěvky: 1142
 - Registrován: srpen 08
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu Vyřešeno
No ja jsem nenapsal furiantske:
Pro vychozi zadani - cilovy sesit se jmeny a do 3. sloupce ze zdrojoveho sesitu prenest hodnoty z 2. sloupce - pouzij nize uvedenou proceduru, vlozit v editoru VBA do standardniho modulu ciloveho sesitu (sesit1), spusti F5 z menu nebo ze sesitu (neuvadis verzi) v Excelu 2000: Nastroje>Makro>Makra>... (pro Excel 2007: Ribbon>Zobrazeni>Makra>Zobrazit makra>...), uprav nazvy sesitu a listu v procedure, demo provedeni:
			
									
									
						To se mi zdá zbytečně složitý, makro by to řešilo rychleji a pohodlněji
Pro vychozi zadani - cilovy sesit se jmeny a do 3. sloupce ze zdrojoveho sesitu prenest hodnoty z 2. sloupce - pouzij nize uvedenou proceduru, vlozit v editoru VBA do standardniho modulu ciloveho sesitu (sesit1), spusti F5 z menu nebo ze sesitu (neuvadis verzi) v Excelu 2000: Nastroje>Makro>Makra>... (pro Excel 2007: Ribbon>Zobrazeni>Makra>Zobrazit makra>...), uprav nazvy sesitu a listu v procedure, demo provedeni:
Kód: Vybrat vše
Option Explicit
Sub DoplnHodnoty()
' deklarace promennych
  Dim SWbk As Workbook, SWsht As Worksheet, SBlk As Range, SCll As Range
  Dim TWbk As Workbook, TWsht As Worksheet, TBlk As Range, TCll As Range
  ' definice sesitu, listu bloku bunek a bunek
  ' zdrojovy sesit
  Set SWbk = Workbooks("sešit2.xlsx")
  Set SWsht = SWbk.Worksheets("list1")
  With SWsht  ' mozny zpusob definice bloku
    Set SBlk = Intersect(.UsedRange, .Range("a:a"))
  End With
  ' cilovy sesit
  Set TWbk = Workbooks("sešit1.xlsm")
  Set TWsht = TWbk.Worksheets("list1")
  With TWsht
    Set TBlk = Intersect(.UsedRange, .Range("a:a"))
  End With
  ' pro jednotlive bunky v cilovem bloku prohledavat zdrojovy blok
  ' pri nalezeni prenest hodnotu ze sloupce B;B
  ' do sloupce C:C ciloveho bloku
  For Each TCll In TBlk.Cells
    With SBlk  ' metoda Find
      Set SCll = .Find(TCll.Value, LookIn:=xlValues, LookAt:=xlWhole)
      If Not SCll Is Nothing Then  ' nalezeno
        TCll.Offset(0, 2).Value = SCll.Offset(0, 1).Value  ' prennos hodnoty
      End If
    End With
  Next TCll  ' dalsi
  ' odstranit objektove promenne
  Set SCll = Nothing
  Set SBlk = Nothing
  Set SWsht = Nothing
  Set SWbk = Nothing
  Set TCll = Nothing
  Set TBlk = Nothing
  Set TWsht = Nothing
  Set TWbk = Nothing
End Sub- 
				m.a.x.2.0.0.4
 - nováček
 - Příspěvky: 6
 - Registrován: listopad 10
 - Pohlaví: 

 - Stav:
		Offline
 
Re: Excel VBA přidat hodnoty z jiného listu
Funguje to bezvadně, mockrát děkuji
			
									
									
						- 
				
- Mohlo by vás zajímat
 - Odpovědi
 - Zobrazení
 - Poslední příspěvek
 
 
- 
				
- 3
 - 5406
 - 
						od Grander
						Zobrazit poslední příspěvek 
20 lis 2024 15:04
 
 - 
				
- 2
 - 13968
 - 
						od Snekment
						Zobrazit poslední příspěvek 
29 led 2025 15:05
 
 - 
				
- 1
 - 7033
 - 
						od atari
						Zobrazit poslední příspěvek 
07 kvě 2025 09:41
 
 - 
				
- 5
 - 5469
 - 
						od atari
						Zobrazit poslední příspěvek 
26 dub 2025 09:11
 
 - 
				
- 
												Excel 2016 - vzorec kombinace podmínek Příloha(y)
od MK_Vs » 08 led 2025 17:56 » v Kancelářské balíky - 5
 - 5696
 - 
						od lubo.
						Zobrazit poslední příspěvek 
14 led 2025 00:51
 
 - 
												
 
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 5 hostů

