Thursday, June 08, 2006

രക്ഷിക്കണേ.. ആരേലും ഓടി വായോ.

കമ്പ്യൂട്ടറേട്ടന്മാരേ, ഈ വിദ്യാവിഹീനപ്പശുവിനെ രക്ഷിക്കോ.

പ്രശ്നം ഇതാണ്‌.
ഒരു പാപിയുടെ ആപ്പീസില്‍ നിന്നും മാസാമാസം എനിക്കു ഒരു എക്സല്‍ ഫയലില്‍ കുറേ ആളുകള്‍ക്ക്‌ കാശു കൊടുത്ത കണക്കു വരും. ഞാന്‍ അതു എ ഡി ഐ വഴി ഞമ്മടെ ബിമാനക്കണക്കുപുസ്തകത്തില്‍ കയറ്റി വിടും. സിമ്പിള്‍. എന്നാല്‍ ഈ സിമ്പിള്‍ കോമ്പ്ലക്സ്‌ ആകുന്നത്‌ ഇങ്ങനെ ആണ്‌.
ലവന്റെ ചാര്‍ട്ട്‌ ഓഫ്‌ അക്കൌണ്ടിലെ കോഡും ഞമ്മടെ സാമ്പത്തിക വെളിച്ചപ്പാട്‌ പതിനൊന്നാമന്റെ കോടും രണ്ടാണ്‌.

ലവരുടെ കോഡിനെ ഞാന്‍ എന്റെ കോഡിലോട്ട്‌ ലങ്ങനെ മാപ്പ്‌ ചെയ്തു ഒരു സ്പ്രെഡ്‌ ഷീറ്റ്‌ ആക്കി വച്ചിട്ടിണ്ട്‌.



ഓരോ മാസവും പാപി ഇങ്ങനെ ഒരു ഫയല്‍ അയക്കും

എനിക്കതില്‍ ലവന്റെ കോഡ്‌ മാറ്റി എന്റെ കോഡ്‌ ആയാലേ എ ഡി ഐ നടക്കൂ. ഇല്ലെങ്കില്‍ സാമ്പത്തിക വെളിച്ചപ്പാട്‌ തല വെട്ടി പിളര്‍ക്കും.

ഈ വീ ലുക്ക്‌ അപ്‌ എന്നോ മറ്റോ ഒരു സാധനം കൊണ്ട്‌ ലവന്‍ അയക്കുന്ന ഫയലില്‍ ലവന്റെ കോഡ്‌ നമ്പ്ര മാറ്റി എന്റെ കോഡ്‌ നമ്പ്ര ഇടാന്‍ ഒരു വഴിയില്ലേ (ഈയാര്‍പ്പിക്കാര്‍ ഇമ്പ്ലെമെന്റര്‍മാര്‍ എപ്ലും ചെയ്യാറില്ലേ ഇതുപോലെ എതാണ്ട്‌) അതു എങ്ങനെ സാധിക്കും സാര്‍?

ആരേലും രക്ഷിക്കോ. ഞാന്‍ ഒന്നു പണിയെടുത്ത്‌ പെഴച്ചോട്ടെ.

20 comments:

  1. ഇതു ചെയ്തു തരുന്നവര്‍ക്ക്‌ ഞാന്‍
    "നൂറു രൂപ തരാം. പഞ്ചായത്താപ്പീസില്‍ പ്യൂണിന്റെ പണിയും വാങ്ങിത്തരാം"

    ReplyDelete
  2. ദേവേട്ടാ‍, ഇത് വെറുതെ എക്സെലിന്റെ അടിസ്ഥാനം മാത്രമറിയാവുന്നവര്‍ക്ക് സഹായിക്കാന്‍ പറ്റിയതണോ അതോ കൂടിയതാണോ?

    ReplyDelete
  3. ആര്‍ക്കും ചെയ്യാം പൊന്നു വക്കാരിയേ. ലവന്‍ ഫയല്‍ അയക്കുമ്പോ ഹൂക്കിയിട്ടോ ക്രൂക്കിയിട്ടോ അവന്റെ കോഡുപോയി എന്റെ കോഡു വരണം അത്രേ വേണ്ടൂ..

    ReplyDelete
  4. ദേവേട്ടാ, csv file ആയി save ചെയ്യാന്‍ തയ്യാറാണെങ്കില്‍ ഒരു perl സ്ക്രിപ്റ്റ്‌ ഉണ്ടാക്കി അയച്ച്‌ തരാം.

    ReplyDelete
  5. എനിക്കുമിതുകൊണ്ടൊരാവശ്യമുണ്ടു്. പറഞ്ഞുതരുന്നയാൾക്കപ്പോൾ 100 രൂപയും പ്യൂണിന്റെ പണിയും കൂടാതെ ,മഹത്തായ ഒരു നന്ദിയും.

    എന്റെ സ്ഥിതി ദേവന്റേതിൽനിന്നു് വ്യത്യസ്ഥമായതുകൊണ്ടു് ഞാൻ തൽക്കാലം find & replace കൊണ്ടഡ്ജസ്റ്റ് ചെയ്യുന്നു. പക്ഷേ എനിക്കുവേണ്ടതു് ഇങ്ങനെയാണു്.

    if this == that
    goto selling price
    sp = sp*1.25

    കാപ്പാത്തുങ്കോ ഗ്ലബ്ബുകാരേ

    ReplyDelete
  6. തല്‍ക്കാലം ദേവന്‍ മാഷിന്റെ ചോദ്യത്തിന് എളുപ്പ വഴിയായി എനിക്കു തോന്നിയത്:

    വേണ്ടത്:
    Code1 Val1 code2
    A 1 X
    B 2 Y
    C 3 Z

    ഒരു ഷീറ്റ് ഓപ്പണ്‍ ചെയ്ത് ഒരു ലുക് അപ് ടേബിള്‍ ഉണ്ടാക്കുക ഉദഹരണത്തിന്
    Code1 Code2
    A X
    B Y
    C Z
    ആദ്യ ഷീറ്റില്‍ കോഡ്2 സെല്ലിന്റെ വാല്യൂ ആയി
    =VLOOKUP(A2,Sheet2!A2:B4,2,FALSE)
    കൊടുക്കുക.
    പിന്നെ വലിച്ച് അതിനെ ബാക്കി സെല്ലിലേക്കും കൂടെ ഇട്ടാല്‍ അത് റിലേറ്റീവ് ആയി ഫോര്‍മുല മാറ്റിക്കോളും..
    ഇതും കൂടെ കണ്ടോളൂ

    ReplyDelete
  7. സിദ്ധ ഗുരോ, ദേവ ഗുരു കാണിച്ചപോലെ ഒരു എസ്കാമ്പിള്‍ കാണിച്ചാല്‍ സഹായിക്കാന്‍ നോക്കാം..

    ദേവഗുരോ, വലിച്ചിടുമ്പോള്‍ കുറച്ച് സാങ്കേതിക ബുദ്ധിമുട്ടുകള്‍ ഉണ്ടാവാന്‍ വഴിയുണ്ട്.. റേഞ്ച് അവന്‍ റിലേറ്റീവാക്കിക്കളയും.. അതു കുളമാവും..

    ReplyDelete
  8. വിദ്യയുടെ പശു!
    വിദ്യ ബ്ലോഗുകള്‍ വായിക്കാറില്ലാന്നു തോന്നുന്നു.
    ശനിഗുരു കാണിച്ച് വീലുക്കപ്പ് ദേവന്‍ വലിച്ചിട്ടോ? ശരിയായെങ്കില്‍ അങ്ങനെ അല്ലെങ്കില്‍ വീലുക്കപ്പിന്റെ ലളിതച്ചേച്ചി ലുക്കപ്പ് ഉപയോഗിച്ചു നോക്കൂ. ലളിതയായ ഈ പ്രശ്നത്തിന് അവള്‍ മതിയെങ്കില്‍ ഇവിടെ അതുണ്ട്. നിന്റേ കോഡും ഞങ്ങളുടെ കോഡും ഒത്തുചേര്‍ന്ന് കൊളമായ കോഡായാല്‍ ഞാന്‍ ഉത്തരവാദിയല്ല.
    ---
    ചളം കൊളം ലെവല്‍ പുരാതന അപ്പ്ലിക്കേഷനുകള്‍ ചവച്ചുതുപ്പണതൊക്കെ യീയാര്‍പ്പീ റെഡി ആക്കിക്കൊടുത്ത് പരിചയമുള്ള പീഊണിനെയെങ്ങാനും അവിടെ വേണോ?

    ReplyDelete
  9. ദേവേട്ടാ..... പിരോബിളം സൊള്ളുവഡ്?

    ReplyDelete
  10. ദേവാ:

    എനിക്ക് എക്സെല്‍ യാതൊരു പിടിയുമില്ല, എന്നാലും ഇങനെ ഒരു ചോദ്യം വന്ന സ്ഥിതിക്ക് വെറുതെ നോക്കി. ഒരു macro ആയിരിക്കും ഏറ്റവും എളുപ്പമെന്നു തോന്നുന്നു. താഴെക്കൊടുത്തിരിക്കുന്ന സാധനം ഒരു വര്‍‌ക്ക്ഷീറ്റുണ്ടാക്കി macro editor തുറന്ന് (alt-f8), please cut and paste. This can be any worksheet (let's just call it macro.xls). You need to create another worksheet (I call it devan.xls in the program) and enter their (customer's) code numbers in col A and your equivalent ones in col B (of devan.xls). When customer sends their workbook (say cust.xls), you open macro.xls (there may be other ways to get the macros, but as I said, I no nothing about Excel) along with cust.xls. Then in cust.xls, you select the column that contains the code numbers in customers own format, and run alt-f8 devmacro, and voila it will do the required substitutions. The only thing you need to maintain is devan.xls. You can add new mappings without changing the macro. If the customer sends you a code that you don't have an equivalent for, the macro will put the value '0' in the corresponding cell. Try this out. It is slow but flexible and forgiving (I believe). Meanwhile experts among us could check for the correctness and improve the performance. Email me (paappaan gmail) if you want to discuss.

    ----cut and paste from here---
    Function MappedValue(TmpValue)
    Workbooks.Open("devan.xls").Worksheets("Sheet1").Range("A1").Activate
    Do Until ActiveCell.Value = ""
    If ActiveCell.Value = TmpValue Then
    MappedValue = ActiveCell.Offset(0, 1).Value
    GoTo endfn
    End If
    ActiveCell.Offset(1, 0).Select
    Loop
    MappedValue = 0
    endfn:
    Workbooks("devan.xls").Close
    End Function
    Sub DevMacro()
    'Loop
    Dim Temp
    For Each Temp In Selection
    Temp.Value = MappedValue(Temp.Value)
    Next
    End Sub

    ReplyDelete
  11. അതു മുറിഞ്ഞുപോയി എന്നു തോന്നണു. ഇവിടെ പോസ്റ്റ് ചെയ്തിട്ടുണ്ട് ഇതേ സാധനം. ശനിയനോ എക്സെല്‍ അറിയാവുന്ന മറ്റാരെങ്കിലുമോ ഇതു പരിശൊധിച്ചാല്‍ നന്നായിരുന്നു.

    ReplyDelete
  12. നാനി നാനി നാനി
    ഇന്നു അവധി ദിനം. പുശ്ചത്തില്‍ അര്‍ക്കകിരണങ്ങള്‍ ലേസര്‍ സര്‍ജ്ജറി നടത്തിയപ്പോള്‍ ഞാനെഴുന്നേറ്റു. ശാപ്പാടടിച്ചു (ശരീരമാദ്യം ഖലു ധര്‍മ്മ സാധനം എന്ന ആ ശ്ലോകം മൊത്തത്തിലെന്താ ഗുരുക്കളേ?)

    ആപ്പീസിലെത്തി. കുഞ്ഞന്‍സ്‌, ശനിയന്‍സ്‌, അനിലേട്ടന്‍സ്‌, പാപ്പാന്‍സ്‌ എന്നിവരെല്ലാം എന്റെ നീറുന്ന പ്രശ്നം പുല്ലുപോലെ സ്വാള്‍വ്‌ ചെയ്തിട്ടുണ്ട്‌.

    തീര്‍ന്നില്ല. ഈ ക്വെസ്റ്റ്യന്‍ വായിച്ചവര്‍ക്ക്‌ മാക്രോയില്‍ ഞാന്‍ മാക്രിയാണെന്ന് മനസ്സിലായതിനാല്‍ ആദിത്യന്‍, ജേക്കബ്‌, അനിലേട്ടന്‍, ശനിയന്‍, എന്നിവര്‍ ഫയല്‍ തന്നെ ഉണ്ടാക്കി അയച്ചിരിക്കുന്നു. Payroll കാപ്പി ചെയ്യെടേ പേസ്റ്റ്‌ ചെയ്യടേ. ഇതിലും സിമ്പിള്‍ ആയി ഇനി എന്തുണ്ട്‌?


    പോലീസു ഡിപ്പാര്‍ട്ടുമെന്റിന്റെ 12 പേറോളുകള്‍ ഇതാ റോള്‍ ചെയ്തു ചെയ്ത്‌ ബിമാന സാമ്പത്തികനില്‍ കയറിക്കൊണ്ടിരിക്കുന്നു. എന്റെ ഹൃദയം നിറഞ്ഞ നാനി. (മേലിലും സഹായം പ്രതീക്ഷിക്കുന്നു :) ) നാനിക്കു പുറമേ മാനി, പുകയില, കാഴ്ച്ചക്കുല, കള്ളും മീനും എന്നിവ ഒരോരുത്തരെയായി നേരിട്ടു കാണുമ്പോള്‍ തരുമെന്ന് ഞാന്‍ ഇതിനാല്‍ പ്രതിജ്ജ്ഞ എടുക്കുന്നു..

    ReplyDelete
  13. ഇനി ഈ പോസ്റ്റ്‌ വായിക്കുന്നവര്‍ ഈ കമന്റ്‌ ആദ്യം വായിച്ചില്ലെങ്കില്‍ വീല്‍ (ഏതു വീല്‍? കണ്ണന്റെ ചക്കരം ചക്കരം ) രണ്ടാമതും കണ്ടു പിടിച്ചതുപോലെ സമയം പാഴാകുമെന്ന് ഈ കുറിപിനാല്‍ അറിയിക്കുന്നതിനാല്‍ ഈ കുറിപ്പ്‌ വായിച്ച ശേഷം പോസ്റ്റ്‌ വായിക്കാന്‍ തുടങ്ങേണ്ടതാകുന്നുവെന്ന് മാലോരെ ഇതിനാല്‍ അറിയിക്കുന്നു (വക്കാരീ പ്രാബ്ലം സ്വാള്‍വ്ഡ്‌, നാനി ഫോര്‍ കണ്‍സേണ്‍)

    ReplyDelete
  14. ദേവഗുരോ,

    ആ ശ്ലോകം മുഴുവന്‍ കിട്ടിയിട്ടു വലിയ കാര്യമൊന്നുമില്ല. ബാക്കി വരികള്‍ക്കു് അതുമായി വലിയ ബന്ധമൊന്നുമില്ല. കാളിദാസന്റെ കുമാരസംഭവത്തില്‍ വടുരൂപം ധരിച്ചു വന്ന ശിവന്‍ തപസ്സിനിടയ്ക്കു ബ്രേയ്ക്കെടുക്കുന്ന പാര്‍വ്വതിയോടു പറയുന്നതാണു്.

    ഇതാ പിടിച്ചോ ശ്ലോകം:

    അപി ക്രിയാര്‍ത്ഥം സുലഭം സമില്ക്കുശം?
    ജലാന്യപി സ്നാനവിധിക്ഷമാണി തേ?
    അപി സ്വശക്ത്യാ തപസി പ്രവര്‍ത്തസേ?
    ശരീരമാദ്യം ഖലു ധര്‍മ്മസാധനം


    ക്വോട്ടു ചെയ്യാന്‍ കോപ്പുള്ളതല്ല എന്നര്‍ത്ഥം :-)

    ReplyDelete
  15. മേല്‍പ്പറഞ്ഞ ശ്ലോകത്തിനു ഏ. ആര്‍. രാജരാജവര്‍മ്മയുടെ പരിഭാഷയും പിടിച്ചോ:

    കുശ ചമതയുമാശു ലഭ്യമല്ലീ?
    കുളികളിലേക്കു കുളങ്ങള്‍ കൊള്‍വതല്ലീ?
    തുനിവതുമിഹ ശേഷി നോക്കിയല്ലീ?
    സുചരിതസിദ്ധിയില്‍ മൂലമിശ്ശരീരം.


    അതിബൃഹത്തായി വലിച്ചു നീട്ടി വിരിച്ചിരിക്കുന്ന പരവതാനിയില്‍ നിന്നു സാമ്പത്തികവെളിച്ചപ്പാടിലേക്കു ചൂണ്ടുന്ന വിദ്യ ശനിയന്‍, കുഞ്ഞന്‍, അനിലന്‍, പാപ്പാന്‍ തുടങ്ങിയ ശിന്നപ്പയ്യന്മാര്‍ പറഞ്ഞു തന്ന സ്ഥിതിയ്ക്കു് ഇനി ഞാന്‍...










    ... “ഇതൊക്കെ ചെയ്തിട്ടു് ഒരുപാടു നാളായി, അതുകൊണ്ടു മറന്നുപോയി...” എന്നു പറയുന്നില്ല :-)

    ReplyDelete
  16. കശപിശാനന്തരപലായന വേളകളില്‍ ചൊല്ലാന്‍ പറ്റിയതല്ല അപ്പോ ഇത്‌ അല്ലേ. എന്നാപിന്നെ കള. പറഞ്ഞു തന്നതിനു നാനി നാനി, ഗുരുക്കളേ.

    ReplyDelete
  17. ദേവന്‍ എന്തരോ ഒക്കെ ചെയ്ത് അത് ശരിയാക്കി കൈയ്യിക്കൊടുത്തു അല്ലേ?

    ഇദ് ഒരു നല്ല പരിവാടി തന്നെ.
    വായിച്ചാ മനസിലാവാത്ത ഭാഷേലെ ഫാക്കും കേബീം വിട്ട് ഇവിടെ വന്ന് നെലോളിച്ചാല്‍ കാര്യം നടക്കുമെന്ന ഈ തിരിച്ചറിവ് എറിഞ്ഞു തന്ന ദേവനു നന്ദി.
    അടുത്ത തവണ മുതല്‍ നഖവും തൊലിയും കടിച്ചുരിക്കുന്നതിനു പകരം ഇവിടെ വന്നു നെലോളിക്കാം.

    ReplyDelete
  18. Create one file first customer details

    Ex:
    Cus_code My_Code
    79874654 500500
    978978798 500501
    65456 500502

    - Sort Accenting by First Col
    - Save File (Ex : Customer.xls)

    Open u r data file
    Create a formula Like this

    =VLOOKUP (A1,'C:\Work\[Customer.xls]Sheet1'!A2:B600,2)

    A1= their Code

    ReplyDelete
  19. ദേവേട്ടാ, ഈ ചിത്രങ്ങളുടെ വലിപ്പം ഒരിത്തിരി കുറച്ചിരുന്നെങ്കില്‍ നന്നയിരുന്നു. ടെമ്പ്ലേറ്റില്‍ കവിഞ്ഞ് ചിത്രം പുറത്ത് പോകുന്നു.

    ReplyDelete