Keresés

Részletes keresés

Törölt nick Creative Commons License 2011.02.23 0 0 14106

A NAME-t pedig a vRng , miatt írja ki, mert a tábládban lennie kell egy ezzel a névvel ellátott tartománynak.

Előzmény: wawabagus (14102)
Törölt nick Creative Commons License 2011.02.23 0 0 14105

1. Szerintem nam .value kell neki, hanem .FormulaR1C1 

2. ne így használd a vlookup-ot, hanem így:  Worksheetfunction.VLookup(...)  az argumentumok ugyanazok.

Előzmény: wawabagus (14104)
wawabagus Creative Commons License 2011.02.23 0 0 14104

Szia,

Próbáltam, de nem nem érti. Beírj az első celléba, ahova kell és finish : #NAME?.

Kipróbáltam egy az egyben is. Megadva szépen a ranget és szépen kezdi is kitölteni, de az első olyan után cella után ahova nem talál megfelelést "n/a" lenne leáll az egésszel.

Olvastam a neten, hogy a worksheetfunction.vlookup-ot kéne itt használni, mert az nem robban le az első sikeretelen találat után...

 

De basszus lezsibbadtam ettől :-).

Egy hajszál választ el a kész macrotól :-D...és annyire idegesítő hogy ez a vlookup kérdés nem is annyira egyszerű...

 

Most már el kell mennem, de holnap folyt köv...NEM ADOM FEL :-)))...olyan szépen haladtam :-)

 

Majd jövök holnap :-)!

Köszi a problémámmal való foglalkozást!!

Szép estét

 

 

Előzmény: Sznida (14103)
Sznida Creative Commons License 2011.02.23 0 0 14103

Szia,

 

Próbáltad vRng.address-el?

 

Üdv: Sznido

Előzmény: wawabagus (14102)
wawabagus Creative Commons License 2011.02.23 0 0 14102

Sziasztok!

Kéne egy kis segítség :-).

VBA-ban egy loopos VlookUp és egy primko kivonás kifogott rajtam.

 

A misszió, hogy a CheckFile fájlba beírjon egy Vlookupot összekötve a fájlt a PriceList fájllal. Mindezt loop-pal.

vRng hivatott leegyszerűsteni a dolgot, de azt írja ki az excel a vlookup függvényre hogy "NAME?"...szóval nem érti. Én sem.

 

Minden remekül működik. El is kezdi beírni a Vlookupot, de nem tudja értelmezni. Én meg nem értem mit nem ért.

Ti értitek?

Bocsánat kicsit hosszú a macro...

Előre is köszönöm a segítségeteket!!

 

-------------------------------------

Sub teszt2()
Dim wbPriceList As Workbook
Dim wbCheckFile As Workbook
Dim rWorkRange As Range
Dim vRng As Range
Dim x As Long

MsgBox "Open the file you want to check!"
Application.Dialogs(xlDialogOpen).Show
Set wbCheckFile = ActiveWorkbook

MsgBox "Open the PriceList!"
Application.Dialogs(xlDialogOpen).Show
Set wbPriceList = ActiveWorkbook


Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False

x = wbCheckFile.Worksheets.Count


For i = 1 To x
    wbCheckFile.Worksheets(i).Range("B:B").Insert Shift:=xlToRight
    wbCheckFile.Worksheets(i).Range("B1") = "UniqueCode"
    Set rWorkRange = wbCheckFile.Worksheets(i).Range("A2")
    
    Do While rWorkRange.Value <> Empty
        rWorkRange.Offset(0, 1).Value = "=RC[21]&""_""&RC[24]&""_""&RC[26]&"" Q""&ROUNDUP(MONTH(RC[6])/3,0)&"" ""&YEAR(RC[6])"
        Set rWorkRange = rWorkRange.Offset(1, 0)
    Loop
Next i

For i = 1 To x
wbCheckFile.Worksheets(i).Range("B:B").Copy
wbCheckFile.Worksheets(i).Range("B:B").PasteSpecial xlPasteValues
wbCheckFile.Worksheets(i).Range("L:M").Insert Shift:=xlToRight
wbCheckFile.Worksheets(i).Range("O:P").Insert Shift:=xlToRight


wbCheckFile.Worksheets(i).Range("L1") = "PriceList.LaborPrice"
wbCheckFile.Worksheets(i).Range("M1") = "Diff"
wbCheckFile.Worksheets(i).Range("O1") = "PriceList.PartsPrice"
wbCheckFile.Worksheets(i).Range("P1") = "Diff"

Next i

wbPriceList.Worksheets(1).Range("B:B").Insert Shift:=xlToRight
wbPriceList.Worksheets(1).Range("B2") = "UniqueCode"
    Range("A3").Select
        
        Do While ActiveCell.Value <> Empty
            ActiveCell.Offset(0, 1).Value = "=RC[5]&""_""&RC[4]&""_""&RC[-1]"
            ActiveCell.Offset(1, 0).Select
        Loop
        
wbPriceList.Worksheets(1).Range("B:B").Copy
wbPriceList.Worksheets(1).Range("B:B").PasteSpecial xlPasteValues

For i = 1 To x
    Set rWorkRange = wbCheckFile.Worksheets(i).Range("B2")
    Set vRng = wbPriceList.Worksheets(1).Range("B:M")
    
    Do While rWorkRange.Value <> Empty
        rWorkRange.Offset(0, 10).Value = "=VLOOKUP(RC[-10],vRng,10,0)"
        rWorkRange.Offset(0, 11).Value = rWorkRange.Offset(0, 9).Value - rWorkRange.Offset(0, 10).Value
        Set rWorkRange = rWorkRange.Offset(1, 0)
    Loop
Next i


Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

End Sub

 

SQLkerdes Creative Commons License 2011.02.22 0 0 14101

Sőt backdoor sem műxik, hogy a Function-ből meghívok egy sub-ot

 

Function TotalLink(InputRange As Range) As Variant
Call formatter(InputRange, Application.Caller)

TotalLink = InputRange.Value                

End Function 

 

Sub formatter(SourceRange As Range, TargetRange As Range)  

SourceRange.Copy 

TargetRange.PasteSpecial (xlPasteFormats)   

End Sub

 

Meghívja a sub-ot, az le is fut, mégsincs semmilyen hatása.

Előzmény: Törölt nick (14100)
Törölt nick Creative Commons License 2011.02.22 0 0 14100

Izé... Nekem se sikerült sehogy sem, pedig próbálkoztam...

Aztán utánanéztem, és ezt találtam:

 

"UDF's do not have the same flexibility as a standard Procedure. A UDF cannot alter the structure of a Worksheet, such as change the Worksheet name, turn off gridlines, protect the Worksheet etc. They cannot change a physical characteristic of a cell, including the one that houses the UDF. So we cannot use a UDF to change the font colour, background colour etc of any cell. They cannot be used to try and change any part of another cell in any way at all. This means a UDF cannot place a value into any other cell except the cell housing the UDF."

(Forrás: http://www.ozgrid.com/Excel/free-training/ExcelVBA1/excelvba1lesson21.htm)

 

Úgy tűnik, ez zsákutca.

Előzmény: SQLkerdes (14099)
SQLkerdes Creative Commons License 2011.02.22 0 0 14099

Valóban elsikkadt a Caller-es hozzászólás...

 

Szóval ezt csináltam, de a formátumot nem másolja...

 

Function TotalLink(InputRange As Range) As Variant
InputRange.Copy

Application.Caller.PasteSpecial (xlPasteFormats)

TotalLink = InputRange.Value                

End Function

Sznida Creative Commons License 2011.02.22 0 0 14098

Nincs mit, máskor is, ha itt leszek! :)

Előzmény: kelan (14097)
kelan Creative Commons License 2011.02.22 0 0 14097

Köszönöm szépen a segítségedet, pont erre gondoltam! :) Legközelebb konkrétabban megfogalmazom. :)

Előzmény: Sznida (14056)
Törölt nick Creative Commons License 2011.02.22 0 0 14096

"Ebből csak azt nem látom még, hogy a cél-cellát hogy hivatkozzam meg az UDF-ben..."

 

Úgy látom, elsikkadt a 14083. hsz.

 

"Lehet egy Change eseménykezelővel jobban lehetne boldogulni"

 

Képlet számolása nem vált ki a Change eseményt.

Ha pl. B1 cellában a képlet =A1, és A1 megváltozik, akkor lesz Change, de ekkor a Target A1 lesz, és B1-et csak a Target.DirectDependents tartományból tudod kihámozni. Ha a Target.DirectDependents egyetlen cella, akkor szerencséd van. Ha több cella, akkor melyik lehet az, amit át kell színezni?

Előzmény: SQLkerdes (14094)
Törölt nick Creative Commons License 2011.02.21 0 0 14095

Én a forrás cellából csak rámásolnám  .PasteSpecial Paste:=xlPasteFormats módon a célcellára a formátumot. A fene állítgatná egyesével azokat (mert erre következtettem a hszodból)

Sőt. A legegyszerűbb a teljes oszlopra átmásolni, lassítani nem nagyon lassít...

Nehogy egyesével állítgass be minden cellaformátum tulajdonságot
AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDetect languageDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishAfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishDetect language » Hungarian
Előzmény: SQLkerdes (14094)
SQLkerdes Creative Commons License 2011.02.21 0 0 14094

Hát mert a kérdező az UDF saját cellájában szeretné látni a forrás-cella formázását.

Szóval a teendő:

- kitalálni mi a forrás cella (ez ugye bejövő adat, simán megy);

- kiolvasni a forrás-cella minden formázását (Bold, Italic, keret, szín, stb.)

- a cél cella formázását a fentiekkel azonossá tenni.

 

Ebből csak azt nem látom még, hogy a cél-cellát hogy hivatkozzam meg az UDF-ben...

 

Lehet egy Change eseménykezelővel jobban lehetne boldogulni (ott mondjuk az lenne relatíve bonyolult, hogy kiszedjük a cellatartalomból, hogy csak egy sima =B1 tipusú hivatkozás van benne és nem egy "Sheet3!A4+5"

Előzmény: Törölt nick (14088)
Sánta Kutya (SK) Creative Commons License 2011.02.21 0 0 14093

Köszi! Valóban nem fórumoztam, plusz még ha fórumozok, akkor is ritkábban írok ide, mert nagyon eltolódott a topik a makróírás felé, amiben meg én is tanonc lehetnék, és csak lesem a válaszokat.

Előzmény: Törölt nick (14092)
Törölt nick Creative Commons License 2011.02.21 0 0 14092

te egy ideje eltűntél a fórumról, üdv újre

AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDetect languageDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishAfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishDetect language » Hungarian
Előzmény: Sánta Kutya (SK) (14091)
Sánta Kutya (SK) Creative Commons License 2011.02.21 0 0 14091

Gondoltam, hogy valami vicces hiba lehet. :-)

Előzmény: Törölt nick (14090)
Törölt nick Creative Commons License 2011.02.21 0 0 14090

Köszi,

a többiért meg elnézést, egy opera fordító plugin okozza. (Természetesen én semmit nem írok be, csak a hsz-omat)

Előzmény: Sánta Kutya (SK) (14089)
Sánta Kutya (SK) Creative Commons License 2011.02.21 0 0 14089

Elgondolkodtam rajta: például le lehetne kérdezni a cellára előre beállított formázást vagy feltételes formázást, vagy lehetne relatívan címezni a tőle eggyel balra levő cellát vagy ilyesmi.

 

Talán az afrikaanst választanám a listádból, ott most jó idő lehet.

Előzmény: Törölt nick (14088)
Törölt nick Creative Commons License 2011.02.21 0 0 14088

sql, mia  fenének kell egy UDF saját celláját meghivatkozni?

AfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDetect languageDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishAfrikaansAlbanianArabicArmenianAzerbaijaniBasqueBelarusianBulgarianCatalanChinese (Simplified)Chinese (Traditional)CroatianCzechDanishDutchEnglishEstonianFilipinoFinnishFrenchGalicianGeorgianGermanGreekHaitian CreoleHebrewHindiHungarianIcelandicIndonesianIrishItalianJapaneseKoreanLatinLatvianLithuanianMacedonianMalayMalteseNorwegianPersianPolishPortugueseRomanianRussianSerbianSlovakSlovenianSpanishSwahiliSwedishThaiTurkishUkrainianUrduVietnameseWelshYiddishDetect language » Hungarian
Előzmény: SQLkerdes (14079)
Bendeguuz Creative Commons License 2011.02.21 0 0 14087

nagyon köszönöm :)

Előzmény: Sánta Kutya (SK) (14086)
Sánta Kutya (SK) Creative Commons License 2011.02.21 0 0 14086

=ABS(G14)

Előzmény: Bendeguuz (14085)
Bendeguuz Creative Commons License 2011.02.21 0 0 14085

Sziasztok!

 

SOS feladat, a G14 eredményét hozza át a H16-ba, de, ha negatív, akkor szorozza meg -1, hogy pozitív legyen, de, ha pozitív, akkor hagyja békén, mert ide, csak pozitív szám kerülhet.

 

Nagyon köszönöm, a segítséget.

 

Bendegúz

Törölt nick Creative Commons License 2011.02.21 0 0 14084

Már nem nagyon emlékszem, de mintha a 2003 - 2007 verzióváltáskor merült volna fel, különböző függvények (dátum?) kapcsán. Talán még az Analysis Toolpak használata (illetve ennek bekapcsolása) is lehetett... Sajnos, nem tudok bővebben segíteni.

Előzmény: 72G (14082)
Törölt nick Creative Commons License 2011.02.21 0 0 14083

Application.Caller

Előzmény: SQLkerdes (14079)
72G Creative Commons License 2011.02.21 0 0 14082

Szia boraka,

 

annak idején kaptál erre választ?

 

Nálam szintén a "Fájlhibaaz adatok elveszhetnek" hibaüzenet jelent meg, és nem tudom mit tegyek, hogy az esetleges adatvesztést elkerüljem.

 

Persze mindenki más segítségét is örömmel veszem... :)

Előzmény: Törölt nick (6431)
Sznida Creative Commons License 2011.02.20 0 0 14081

OK, mostmár rájöttem, hogy nem erre (activecell.address) gondoltál...

Előzmény: Sznida (14080)
Sznida Creative Commons License 2011.02.20 0 0 14080

Szia,

 

Már lehet megoldottad, de ha nem, és ha erre gondoltál, akkor

activecell.address

 

Üdv: Sznido

Előzmény: SQLkerdes (14079)
SQLkerdes Creative Commons License 2011.02.20 0 0 14079

UDF = User Defined Function

Egy olyan excel függvény, amit a felhasználó maga ír.  Gyakorlatilag egy makró (makro?).

 

Ha jár erre valaki aki tudja hogy kell az UŰDF saját celláját  meghivatkozni a kódon belül (ThisCell) az nyugodtan szóljon, mert ezzel senyvedek...

Előzmény: zso68 (14078)
zso68 Creative Commons License 2011.02.20 0 0 14078

Érzem a törődést és köszönöm is!

 

Majd nagyon, de nagyon figyelek, merthogy igazából teljesen ámátőőőr excel felhasználó vagyok. (Egyelőre fogalmam sincs mi az az UDF, de majd bólogatok, mintha érteném.)

 

zso68

Előzmény: SQLkerdes (14077)
SQLkerdes Creative Commons License 2011.02.20 0 0 14077

UDF-fel szerintem meg lehet oldani, majd gondolkodom rajta.

Előzmény: Törölt nick (14076)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!