< návrat zpět

MS Excel


Téma: ověření dat - seznam z výce zdrojů rss

Zaslal/a 26.6.2017 13:43

Ahoj pánové,

nejspíš to bude úplná banalita, která mi zkrátka nedochází nebo to seznam neumožnuje. Jde do seznamu v ověření dat zahrnout data z více zdrojů (listů). Resp. pokračovat při vybírání dat na dalším listě. viz. vzor, děkuji za pomoc a nezlobte se, že otravuji s takovou prkotinou.

Příloha: xlsx36734_vzor.xlsx (11kB, staženo 29x)
Zaslat odpověď >

#036735
elninoslov
To nepôjde, musíte si urobiť zlučovaciu tabuľku...citovat
#036736
avatar
pomocná tabulka pokulhává, protože se data ve zdroji 1 a 2 budou dynamicky měnit podle příbytků a úbytků. Resp. by to možná šlo, ale už by to nebyla jednoduchá pomocná tabulka.citovat
#036737
elninoslov
Napr. vzorec na 1000 riadkov.
Příloha: xlsx36737_36734_vzor.xlsx (35kB, staženo 33x)
citovat
#036738
MePExG
Pridávam zoznam (Spoj) aktualizovaný pomocou Power Query ([aktualizovaný pri otvorení a každé 3 minúty] použiteľné od verzie 2010-doplnok, 2016-obsahuje).
Příloha: xlsx36738_pq-vzor.xlsx (33kB, staženo 29x)
citovat
#036739
avatar
Pridavam reseni makrem:
Option Explicit
Function LastUsedRow(ws As Worksheet, column As Long) As Long
LastUsedRow = ws.Cells(ws.Rows.Count, column).End(xlUp).Row
End Function
Sub SetValidation()
Dim RngSource As Range, rDV As Range, r As Range, csString As String, v As String
Dim c As Collection
Dim sDV As Worksheet, sH As Worksheet

Set sDV = ThisWorkbook.Sheets("výstup")
Set rDV = sDV.Range("A2:A50")
csString = ""

Set c = New Collection
'set zdroj1
Set sH = ThisWorkbook.Sheets("zdroj1")
Set RngSource = sH.Range("A2:A" & LastUsedRow(sH, 1))

On Error Resume Next
For Each r In RngSource
v = r.Value
If v <> "" Then
c.Add v, CStr(v)
If Err.Number = 0 Then
If csString = "" Then
csString = v
Else
csString = csString & "," & v
End If
Else
Err.Number = 0
End If
End If
Next r
On Error GoTo 0

'set zdroj2
Set sH = ThisWorkbook.Sheets("zdroj2")
Set RngSource = sH.Range("A2:A" & LastUsedRow(sH, 1))

On Error Resume Next
For Each r In RngSource
v = r.Value
If v <> "" Then
c.Add v, CStr(v)
If Err.Number = 0 Then
If csString = "" Then
csString = v
Else
csString = csString & "," & v
End If
Else
Err.Number = 0
End If
End If
Next r
On Error GoTo 0

'MsgBox csString
With rDV.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=csString
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = False
End With

Set sH = Nothing
Set sDV = Nothing
Set RngSource = Nothing
Set rDV = Nothing
End Sub
citovat
#036740
avatar
Mockrát pánové děkuji, že jste mi věnovali trocha prostoru. Během dne otestuji a dám vědět :) Ještě jednou děkuji!!!citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje