PDA

View Full Version : தரவு தாள் பயனர் படிவம் (யூசர் பார்ம்-விசுவல் பேசிக்) மூலம் கூட்டு வட்டி கணக்கிடல்



nambi
05-10-2010, 04:12 PM
தரவு தாளில் பயனர் படிவம் உருவாக்கி பல விதங்களில் பயன்படுத்தலாம்...உதாரணமாக தரவு உள்ளீடு (டேட்டா என்ட்ரி), தரவு தேடுதல், வருமான வரிக்கணக்கீடு, வங்கி தொடர் வைப்பு கணக்கீடு கணிப்பான், இன்னும் இது போன்ற பல கணிப்பான்களை உருவாக்கி பயன்படுத்தலாம். வீட்டு வரவு செலவுகணக்குக்கான தரவு உள்ளீடுகளை உருவாக்குவதற்கு இந்த பயனர் படிவம் பயன்படுகிறது. எக்சல் தரவு தாளை விட இதை பயன்படுத்துவதற்கு மிக எளிதாக பழகுதலினால் நமக்கு மாறிவிடும்....

இதில் அனைத்தையும் இப்பொழுது பார்க்கப்பபோவதில்லை....இதற்கான ஆரம்ப அரிச்சுவடியும் இப்போதைக்கு தேவையில்லை....

பயனர் படிவம்......தரவு தாளில் உருவாக்க முதலில் புதிய பணிப்புத்தகம் திறந்து அதில் Alt F11 அழுத்தி (சமயத்தில் சரியாக அழுத்தவில்லை என்றால் சார்ட் உருவாகிவிடும்) அல்லது கருவிகள் (டூல்ஸ்) சென்று..........பின்பு விசுவல் பேசிக் திருத்தி (விசுவல் பேசிக் எடிட்டர்) என்ற கட்டளையை அழுத்தினால் அந்த பக்கம் உருவாகிவிடும்....அதில் உள்ள கட்டளை பட்டி மெனுவில் உள்ள உள்ளீடு (இன்சர்ட்) மெனுவை அழுத்தினால் வரும் பட்டியலில் யூசர்பார்ம் என்பதை அழுத்தியவுடன் திறக்கும் விண்டோவில் யூசர் பார்ம் அதாவது பயனர் படிவம் உருவாக்கலைத் தொடங்கலாம்.........

இதுபற்றி விளக்கமாக இந்த தளத்தில் (http://functionx.com/excel/applications/compoundinterest.htm) கூறப்பட்டுள்ளது....அதனடிப்படையில் சில வண்ண மாற்றங்களுடன் கீழே கொடுக்கப்பட்டுள்ள படத்தில் காட்டியவாறு அமைத்து கொள்ளலாம்...
(கருவி பெட்டி கொண்டு இப்படி அமைத்துகொள்ளவும்)

http://i837.photobucket.com/albums/zz297/nambitn/USERFORMANDTOOLBOX.jpg

http://i837.photobucket.com/albums/zz297/nambitn/COMPOUNDINTCALUSERFORM1.jpg

அதனோடு.......உட்கூறுகளை கீழ்கண்டவாறு அமைக்கவும்....

பயனர்படிவத்தில் பயனர் வடிவம் (யூசர்பார்ம்), சிட்டை (லேபில்), உரைப்பெட்டி (டெக்ஸ் பாக்ஸ்) இவைகளின் உட்கூறுகள் (பிராப்பர்ட்டிஸ்) பெட்டியில் உள்ளிட வேண்டியவைகள் கீழே பட்டியலில் உள்ளன. அதன்படி பயனர் படிவத்தை அமைத்துக் கொள்ளலாம்.

http://i837.photobucket.com/albums/zz297/nambitn/TEXTFORMANDLABELCHART.jpg

இதன்படி வடிவமைக்கப்பட்டபிறகு..... விசுவல் பேசிக் நிரல்களை நிரப்பும் பணி..
1. ''கால்குலேட்'' என்ற கட்டளை பொத்தானை அழுத்தியவுடன் வரும் நிரல் பெட்டியில் கீழே குறிப்பிடப்பட்ட நிரலை நகல் எடுத்து இந்த கட்டளை வரிக்கும் ''Private Sub cmdCalculate_Click()''.........கட்டளையின் முடிவு நிரல் வரிக்கும் ''End Sub'' உள்ள இடைப்பட்ட இடத்தில் ஒட்டவேண்டும்...பின்பு F5 விசையை அழுத்தி சோதனை செய்யவும்....அவ்வளவுதான் கணிப்பான் வேலை முடிந்தது.

Dim Principal As Currency
Dim InterestRate As Double
Dim InterestEarned As Currency
Dim FutureValue As Currency
Dim RatePerPeriod As Double
Dim Periods As Integer
Dim CompoundType As Integer
Dim i As Double
Dim n As Integer

Principal = CCur(txtPrincipal.Text)

InterestRate = CDbl(txtInterestRate.Text) / 100

If optMonthly.Value = True Then
CompoundType = 12
ElseIf optQuarterly.Value = True Then
CompoundType = 4
ElseIf optSemiannually.Value = True Then
CompoundType = 2
Else
CompoundType = 1
End If

Periods = CInt(txtPeriods.Text)
i = InterestRate / CompoundType
n = CompoundType * Periods
RatePerPeriod = InterestRate / Periods
FutureValue = Principal * ((1 + i) ^ n)
InterestEarned = FutureValue - Principal

txtInterestEarned.Text = FormatCurrency(InterestEarned)
txtAmountEarned.Text = FormatCurrency(FutureValue)


2. அடுத்தது ''குளோஸ்'' கட்டளை பொத்தானுக்கான நிரல்கள்....களோஸ் பொத்தானை அழுத்தியவுடன் திறக்கும் நிரல் தாளில் (மாடியூல்) கீழ்வரும் இரண்டு கட்டளைக்கிடையில்
Private Sub cmdClose_Click()

End Sub
கீழே கொடுக்கப்பட்ட கட்டளை வரியை நகல் எடுத்து ஒட்டினால்....பயனர் படிவம் மூடுவதற்கான கட்டளை முடிந்தது.

Unload Me

இதன் பின் தரவு (எக்சல் தாள் திரும்பி) Alt Q அழுத்தி செல்லலாம்....(அப்படியே சேமிக்கப்பட்டுவிடும்)
3. மூன்றாவது...எகசல் தாளில் பயனர் படிவம் திறக்குமாறு அமைக்கப்பட்ட கட்டளைபொத்தானை அழுத்தி கீழேக் குறிப்பிட்டுள்ள நிரலை நகல் எடுத்து கீழே உள்ள கட்டளைக்கிடையில் ஒட்டவேண்டும்.

Private Sub CommandButton1_Click()

End Sub



UserForm1.Show

(சரி தரவுத் தாளில் எப்படி கட்டளைபோத்தான் அமைப்பது...?
தரவுத்தாள் (எக்சல்) ''காண்'' (வியூ) மெனு சென்று ''கருவிப்பெட்டிகள்'' (டூல்ஸ்)
சென்று ''கருவிப்பெட்டி கட்டுப்பாடு'' என்ற தேர்வில் டிக் மார்க் செய்தால் பொத்தான் வடவமைப்பதற்கான பட்டி எக்சலின் மேல் பட்டியில் வந்து நிறுகும் அதைப் பயன்படுத்தி இந்த பொத்தானை அமைத்துக்கொள்ளலாம். )
அவ்வளவுதான் கூட்டு வட்டி கணிப்பான் தயார்....
.................................................................................................
குறிப்பு;
பொதுவாக இந்த நிரல் அமைக்கும் பொழுது ஏற்படும் பிழைகள்.....பெரும்பாலும் தட்டச்சு பிழைகளாலேயே இருக்கும்....சில பிழை தவிர்ப்பு முறைகள்...

1. பொதுவாக தலைப்புகளில் (லேபில்களில்) அமைக்கும் பெயர்கள் டெக்ஸ்களில் மாறிலியாக (வேரியபிளாக) காட்டவேண்டும் அதற்கு ஒரே மாதிரியான முறையை பின்பற்றுவார்கள்
உதாரணம்..
"Principal Amount" என்ற தலைப்பை (லேபிலை) உரைபெட்டி உட்கூறுவில் உள்ளிடும் பொழுது "txtPrincipalAmount" உள்ளிடுவார்கள். இப்படித்தான் txt போடவேண்டும் என்பதில்லை வேறு மாதிரியும் போட்டுக்கொள்ளலாம். ஆனால் திருத்தும் பொழுது ஞாபகத்திற்கு வராது...ஆகையால் ஒரேமாதிரியான பின்பற்றலை பின்பற்றுவதற்காக இந்த txt. அதே போன்று லேபிலில் இடைவெளி விட்டு எழுதப்பட்டிருக்கும் இங்கு இடைவெளி விடாமல் எழுதவேண்டும். கணினி நிரல்களில் இடைவெளியும் ஒரு உரையாக எடுத்துக்கொள்ளும் எனபதால்.

ஆகையால் எழுத்துப்பிழைகள் இருந்தால் நிரல் சோதனை செய்யும் பொழுது அந்த பிழை இருக்கும் வரியை மறைமுகமாக சுட்டி காட்டும்...உடனடியாக உராயாடல் பெட்டி அது சம்பந்தமான பெயர் அங்கே உள்ள பெயரும் நிரல்களில் உள்ள பெயரும் சரியாக உள்ளதா என்று பார்த்தால் மட்டும் போதுமானது. நிரல் சரியாக வேளை செய்யும். லேபில்களில் இருக்கும் பிழைகளை நிரல்கள் பொருட்படுத்தாது அது நமது பார்வைக்காக எழுதப்பட்டது எனபதால்.

2. நிரல்களின் முதல் பகுதியில் மாறிலியாக குறிப்பிடும்பொழுது ஏற்படும் பிழைகளல் ஏற்படுவது. இவைகளை சரிசெய்தால் நிரல் சரியாக இயங்கும். இந்த நிரலை பொருத்தவரை சரியாக இயங்கிய ஒன்று. பிழை என்றால் தட்டச்சினால் விளைந்ததாக இருக்கும்.
..................................

அதற்கடுத்த கணிப்பான்கள்...பயனர் படிவங்கள் வேறொரு சந்தர்ப்பத்தில் காணலாம்..இதை அடிப்படையாக வைத்து வேறு மாதிரியாகவும் முயற்சித்து பார்க்கலாம்.

..............................

இவற்றை தமிழில் தலைப்புகள் வருகின்ற மாதிரி அமைக்க முடியாது என நினைக்கிறேன் நான் முயற்சித்து விட்டேன். வழியிருந்தால் தெரிவிக்கவும்.

மேலும் அறிய...பயனர் படிவம் எப்படி உருவாக்குவது என்பது பற்றிய ஒளிஒலிக்காட்சி (http://www.youtube.com/watch?v=5PN7lWJSobQ&feature=player_embedded#!)

நன்றி!

rajesh2008
12-10-2010, 01:45 AM
மிகவும் பயனுள்ளது, கண்டிப்பாக செயல் படுத்தியும் பார்த்துவிட்டு பதிக்கிறேன்

nambi
13-10-2010, 01:16 PM
அடுத்து வங்கி தொடர் வைப்பு முதிர்வுத்தொகை (Recurring Deposit) கணக்கிடலை பயனர் படிவம் உருவாக்கி கணக்கிடல்;

அதற்கு முன்....சில குறிப்புகள்...

தரவுபுத்தகம் = ஒர்க் புக்
ஒரு தரவுப் புத்தகம் = மூன்று பணித்தாள்கள் தானாக (டிபால்டாக) அமைந்திருக்கும் (எக்சல் ஷீட்), அதற்கு மேலும் கூடுதல் பணித்தாள்களை இன்சர்ட் மூலம் உருவாக்கி கொள்ளலாம்....

ஒவ்வொரு தரவுத்தாளுக்கும் தனிப்பெயர்கள் கூட உருவாக்கி கொள்ளலாம் உதாரணத்திற்கு ஆக்ஸ்டு மாதம்,செப்டம் மாதம்...என்று மாதக்கணிக்கிற்காக உருவாக்கி கொள்ளலாம்...இது தெரிந்த விஷயம் தான்....ஆனால் என்ன தான் தரவு தாளில் பெயர்கள் நம் விருப்பத்திறகு மாற்றுக்கொண்டாலும்...விசுவல் நிரலில் இவைகள் தரவுத்தாள் ஒன்று, தரவுத்தாள் 2, தரவுத்தாள்

தனியான தரவுபுத்தகம் (எக்சல்) அல்லது கூட்டுவட்டி கணக்கிட்ட தரவுபுத்தகம் (ஓர்க் புக்) விசுவல் பேசிக் நிரல் தாளிலேயே நுழை (இன்சர்ட்) சென்று இன்னொரு பயனர்படிவத்தை படத்தில் காட்டியுள்ளவாறு உருவாக்கிக்கொள்ளவேண்டும்......
....என்று மட்டுமே குறிப்பிடப்பட்டிருக்கும்...அதாவது ஷீட்1 (Sheet1), ஷீட்2, ஷீட்3....என குறிப்பிடப்பட்டிருப்பதை காணலாம்....அதே போன்று தான் பயனர் படிவமும் ஒரே தரவுப்பணி புத்தகத்தில் எத்தனை பயனர் படிவங்களையும் உருவாக்கி கொள்ளலாம் அதற்கு தனித்தனியாக பெயிரிட்டும் கொள்ளலாம்...நிரல் எழுதும் பொழுது அவை யூசர் பார்ம்1 (UserForm1) , யூசர் பார்ம் 2, யூசர் பார்ம் 3....இப்படித்தான் கணக்கில் எடுத்துக்கொள்ளும்...நாம் அதை வேறுபடுத்தி அறிவதற்காக வேண்டுமென்றால் frmRDMonthly என்றோ அல்லது வேறு விருப்பமான பெயரோ கொடுக்கலாம். (உரை பெட்டி உட்கூறுவில் (பிராப்பர்டீஸ்) மாற்றுதைப்போல...ஆனால் இதற்கான நிரலிலும் மாற்றவேண்டும் நிரலிலும் "frmRDMonthly.Show" என்று தான் குறிப்பிட்டுக்கொள்ளவேண்டும்....கேப்சனில் கொடுத்தப் பெயரையே இடைவெளி விட்டு கொடுக்க கூடாது (வேரியபிளாக கொடுக்கவேண்டும்)...(படத்தில் பார்த்தால் புரியும்)....

இனி தொடர்வட்டிக்கான பயனர் படிவம் வடிவமைப்பது பற்றி.........


ஏற்கனவே எக்சல் சூத்திரத்தை பயன்படுத்தி தரவுத்தாளில்இங்கு (http://www.tamilmantram.com/vb/showpost.php?p=485387&postcount=77) கணக்கிட்டதை போல் இங்கே பயனர் படிவம் பயன்படுத்தி கணக்கிடவேண்டும்.........

அதறகு மேலே கூட்டுவட்டி பயனர் படிவம் எந்த முறையில் வடிவமைத்தோமோ? அதே போன்றதொரு வடிவமைப்புத்தான் இதுவும்....
http://i837.photobucket.com/albums/zz297/nambitn/RECURRINGUSERFORMDESIGNING.jpg

படத்தில் காட்டியுள்ளது போல் வடிவமைத்தபின்...முன்பு செய்த அதே முறையில் கால் குலேட் (Calculate) என்றிருக்கும் கட்டளைபொத்தானை அழுத்தினால் நிரல் அமைப்பதற்கான தாள் (நிரல் தாள்) திறக்கும் அதில் கீழ்குறிப்பிட்டுள்ள நிரலை நகல் எடுத்து முன் குறிப்பிட்டுள்ளதைப் போல இரண்டு கட்டளைக்கு நடுவில் ஒட்டவும்....ஒட்டியபின் F5 அழுத்தி சோதனை செய்யவும்....தொடர்வைப்பு முதிர்வுத்தொகை கணக்கீடு முடிந்தது....

(குறிப்பு கால்குலேட் என்ற பொத்தானை அழுத்தியவுடன் இந்த இரண்டு வரிகளும் தானாக உருவாக்கப்பட்டுவிடும்....
Private Sub cmdCalculate_Click()

End Sub

ஆகையால் இரண்டுமுறை இந்த வரிகள் வராமல் பார்த்து கொள்ளவேண்டும்....ஆகவே அதை தவிர்த்து கீழே கொடுக்கப்பட்டுள்ளது)



Dim RDMonthlyInstalment As Currency
Dim InterestRate As Double
Dim AccumulatedDeposits As Currency
Dim InterestEarned As Currency
Dim MaturityValue As Currency
Dim RatePerPeriod As Double
Dim Periods As Integer
Dim CompoundType As Integer
Dim i As Double
Dim n As Integer

RDMonthlyInstalment = CCur(txtRDMonthlyInstalment.Text)
InterestRate = CDbl(txtInterestRate.Text) / 100

If optMonthly.Value = True Then
CompoundType = 12
ElseIf optQuarterly.Value = True Then
CompoundType = 4
ElseIf optSemiannually.Value = True Then
CompoundType = 2
Else
CompoundType = 1
End If

If optMonthly.Value = True Then
m = 1
ElseIf optQuarterly.Value = True Then
m = 3
ElseIf optSemiannually.Value = True Then
m = 6
Else
m = 12
End If



Periods = CInt(txtPeriods.Text)
i = InterestRate / CompoundType
n = CompoundType * Periods
RatePerPeriod = InterestRate / Periods
MaturityValue = RDMonthlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-1 / m))
InterestEarned = MaturityValue - (RDMonthlyInstalment * Periods * 12)
AccumulatedDeposits = RDMonthlyInstalment * Periods * 12
txtAccumulatedDeposits = FormatCurrency(AccumulatedDeposits)
txtInterestEarned.Text = FormatCurrency(InterestEarned)
txtAmountEarned.Text = FormatCurrency(MaturityValue)
[/QUOTE]

இதற்கு பின் குளோஸ் (Close) கட்டளை பொத்தானை அழுத்தி வரும் நிரல் பகுதியில் நிரல் வரியை கூட்டுவட்டியில் கொடுத்ததுபோல் இருவரிகளுக்கிடையில் கீழுள்ளதை கொடுத்தால் முடிந்தது....

[QUOTE]Unload Me

இதற்கு பின் தரவுத்தளின் மேல் நம்விருப்பத்திற்கேற்ப திறப்பதறகு மேலே கூட்டுவட்டியில் வடிவமைத்தது போல் ஒரு கட்டளை கருவிப்பெட்டி கொண்டு பொத்தானை வடிவமைத்து......தனியான புத்தகத்தில் இந்த பயனர் வடிவமைத்து இருந்தால் கீழுள்ளது போல்...


UserForm1.Show

ஒரேத்தாளில் ஒன்றிற்கு மேற்பட்ட பயனர் படிவங்களை வடிவமைத்து இருந்தால்..


UserForm2.Show

அல்லது பயனர் படிவத்திற்கு இது மாதிரி "frmRDMonthly" கொடுத்திருந்தால்..கீழ்க்கண்டவாறு கொடுக்கவேண்டும்...(இதேயெல்லாம் ஒவ்வொன்றாக பிறகு மாற்றிக்கொள்ளலாம்)


frmRDMonthly.Show

இப்படி குறிப்பிட்டு கொள்ளவும் இப்பொழுது கூட்டு வட்டி, தொடர் வைப்பு முதிர்வுத்தொகைக்கான கணிப்பான்கள் எது வேண்டுமோ? வரவழைத்து கணக்கிட்டுகொள்ளலாம்........http://i837.photobucket.com/albums/zz297/nambitn/RECURRINGDESIGNEDANDOPENONEXCEL.jpg

இது மாதாந்திர சேமிப்பில் சேமித்தால் வரும் முதிர்வுத்தொகை கணக்கீடுக்கான கணிப்பான்....அடுத்து வருவது காலண்டுக்கு ஒருமுறை சேமித்தால் வரும் முதிர்வுத்தொகையை எப்படி? பயனர் படிவம் பயன்படுத்தி கணிப்பானை உருவாக்குவது என்பதை அடுத்த பதிவில் பார்க்கலாம்...

(குறிப்பு இவையெல்லாம் எக்சல் சூத்திரத்தில் பாத்தாகிவிட்டது..அதையும் இதையும் ஒப்பீட்டு பார்க்கலாம்)

மேலும் விவரம் அறிய...பயனர் படிவம் எப்படி? வடிவமைப்பது எனபது பற்றிய ஒளிஒலிக்காட்சி (http://www.youtube.com/watch?v=5PN7lWJSobQ&feature=player_embedded#!)
நன்றி!

mahir
13-10-2010, 05:45 PM
நன்றி நம்பி அவர்களே, மிக பயனுள்ள விளக்கத்தினை தந்துள்ளீர். நன்றி.

பாரதி
15-10-2010, 10:41 AM
பயனுள்ள தகவல்களைத் தருவதற்கு மிகவும் நன்றி நண்பரே.

nambi
22-10-2010, 08:41 AM
பாரதி, மாகிர் அவர்களுக்கு நன்றி!
.......................................................

இது காலாண்டு அதாவது மூன்று மாதத்திற்கு ஒரு முறை வங்கியில் குறிப்பிட்ட காலத்திற்கு தொடர்ந்து செலுத்தும் தொகை கூட்டு வட்டியுடன் முதிர்வுத்தொகையாக எவ்வளவு கிடைக்கும் என்பதை கணக்கிடல் பயனர் படிவம்...இந்திய அஞ்சலகங்களில் இந்த முறை வைப்புத்தொகை இல்லை மேலே குறிப்பிட்ட மாதாந்திர வைப்புத்தொகை மட்டும் தான்...இந்திய வங்கிகளில் உண்டு இதை சிறப்பு தொடர்வைப்புத் திட்டம் என வழங்குவதுண்டு....இந்திய வங்கிகள் கூட்டமைப்புத் தளத்தில் (http://www.iba.org.in/formula.asp#8:) தெரிவிக்கப்பட்டுள்ள சூத்திரத்தின்படி வடிவமைக்கப்பட்டுள்ளது....

இது மேற்கூறிய முறையிலேயே பயனர் படிவம் வடிவமைத்து கொள்ள வேண்டும்...படித்தில் உள்ள தலைப்பு (லேபில்) , உரைப் பெட்டி (டெக்ஸ் பாக்ஸ்) பெயர்களை கொண்டு வடிவமைத்து கொள்ளவேண்டும்...
http://i837.photobucket.com/albums/zz297/nambitn/screenshot10.jpg

அதன் பின் கால்குலேட் "Calculate" என்ற பொத்தானை அழுத்தி பின்வரும் நிரலை விசுவல் பேசிக் நிரல் தாளில் உள்ளிடவேண்டும்..


Dim RDQlyInstalment As Currency
Dim InterestRate As Double
Dim AccumulatedDeposits As Currency
Dim InterestEarned As Currency
Dim MaturityValue As Currency
Dim RatePerPeriod As Double
Dim Periods As Integer
Dim CompoundType As Integer
Dim i As Double
Dim n As Integer

RDQlyInstalment = CCur(txtRDQlyInstalment.Text)
InterestRate = CDbl(txtInterestRate.Text) / 100

If optMonthly.Value = True Then
CompoundType = 12
ElseIf optQuarterly.Value = True Then
CompoundType = 4
ElseIf optSemiannually.Value = True Then
CompoundType = 2
Else
CompoundType = 1
End If
Periods = CInt(txtPeriods.Text)
i = InterestRate / CompoundType
n = CompoundType * Periods
RatePerPeriod = InterestRate / Periods

If optMonthly.Value = True Then
MaturityValue = RDQlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-3 / 1))
ElseIf optQuarterly.Value = True Then
MaturityValue = RDQlyInstalment * (1 + i) * ((1 + i) ^ n - 1) / (i)
ElseIf optSemiannually.Value = True Then
MaturityValue = RDQlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-1 / 2))

Else
MaturityValue = RDQlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-1 / 4))

End If





InterestEarned = MaturityValue - (RDQlyInstalment * Periods * 4)
AccumulatedDeposits = RDQlyInstalment * Periods * 4
txtAccumulatedDeposits = FormatCurrency(AccumulatedDeposits)
txtInterestEarned.Text = FormatCurrency(InterestEarned)
txtAmountEarned.Text = FormatCurrency(MaturityValue)



அடுத்து குளோஸ் "Close" பொத்தானுக்கான....

Unload Me

அதன் பின் தரவு தாளில் திறப்பதற்கான கட்டளை பொத்தானுக்கான நிரல்

UserForm3.Show

(அல்லது)
பயனர் படிவத்திற்கு இது போன்று உட்கூறுவில் (Properties) "frmSpecialRDQuarterly"பெயரிட்டு இருந்தால்...இது போன்று...

frmSpecialRDQuarterly.Show

கணிப்பான் முடிந்தது....

அடுத்தது அரையாண்டு சேமிப்பு தொடர் வைப்பு கூட்டு வட்டி முதிர்வுத்தொகை கணிக்கீடலை பயனர் படிவம் கொண்டு எப்படி ? கணக்கிடுவது....எனபதற்கான பயனர் படிவம் பற்றி காணலாம்.

நன்றி!

nambi
01-11-2010, 01:58 PM
இது அரையாண்டு தொடர்வைப்புத் தொகைக்கான முதிர்வு தொகையினை பயனர் படிவம் மேற்கண்ட முறையிலேயே வடிவமைத்து அறியலாம்....

இதில் ஒவ்வொரு அரையாண்டுக்கும் செலுத்தி வரும் தொகை குறிப்பிட்ட வட்டியுடன் சேர்த்து காலவரை முடிவில் எவ்வளவு கிடைக்கும் என்பதை கணக்கிடல்...இந்திய வங்கிகளில் இந்த முறையிலேயே கணக்கிடப்படுகிறது. இதை சிறப்பு தொடர்வைப்புத் திட்டமாகவும் வங்கிகளில் அறிமுகப்படுத்தப்பட்டு உள்ளது...


http://i837.photobucket.com/albums/zz297/nambitn/RECURRINGCOMPINTHALFYEARLYINV.jpg

படத்தில் காட்டியுள்ளது போல் வடிவமைத்தபின் அதற்கான விசுவல் பேசிக் நிரல்களை கால்குலேட் பொத்தானை அழுத்தி....வரும் நிரல் தாளில் இதை நகலெடுத்து ஒட்டியபின் F5 அழுத்தி சோதனை செய்யவும்...




Dim RDHlyInstalment As Currency
Dim InterestRate As Double
Dim AccumulatedDeposits As Currency
Dim InterestEarned As Currency
Dim MaturityValue As Currency
Dim RatePerPeriod As Double
Dim Periods As Integer
Dim CompoundType As Integer
Dim i As Double
Dim n As Integer

RDHlyInstalment = CCur(txtRDHlyInstalment.Text)
InterestRate = CDbl(txtInterestRate.Text) / 100

If optMonthly.Value = True Then
CompoundType = 12
ElseIf optQuarterly.Value = True Then
CompoundType = 4
ElseIf optSemiannually.Value = True Then
CompoundType = 2
Else
CompoundType = 1
End If
Periods = CInt(txtPeriods.Text)
i = InterestRate / CompoundType
n = CompoundType * Periods
RatePerPeriod = InterestRate / Periods

If optMonthly.Value = True Then
MaturityValue = RDHlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-6 / 1))
ElseIf optQuarterly.Value = True Then
MaturityValue = RDHlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-2 / 1))
ElseIf optSemiannually.Value = True Then
MaturityValue = RDHlyInstalment * (1 + i) * ((1 + i) ^ n - 1) / (i)

Else
MaturityValue = RDHlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-1 / 2))

End If





InterestEarned = MaturityValue - (RDHlyInstalment * Periods * 2)
AccumulatedDeposits = RDHlyInstalment * Periods * 2
txtAccumulatedDeposits = FormatCurrency(AccumulatedDeposits)
txtInterestEarned.Text = FormatCurrency(InterestEarned)
txtAmountEarned.Text = FormatCurrency(MaturityValue)



அதற்கு பின் குளோஸ் பொத்தானை அழுத்தி....வரும் நிரல் தாளில்.. கிழ் உள்ள கட்டளைகளை ஒட்டவேண்டும்...

Unload Me

இதற்கு பின் மூன்றாவதாக தரவுத் தாளில் இந்த பயனர் படிவம் திறப்பதற்கான "Spl Hly RD Calculator" பொத்தானை தரவுத்தாள் கருவிப்பட்டியை கொண்டு வடிவமைத்து (மேலே குறிப்பிட்டுள்ளதை போன்று) )...அந்த பொத்தானை அழுத்தி கீழ்கண்ட நிரலை உள்ளிட வேண்டும்...


frmSpecialRDHalfYearly.Show

(அல்லது)
பயனர் படிவ உட்கூறுவில் (பிராப்பர்ட்டீஸ்) மேற்கண்டவாறு பெயரிடாமல் இருந்தால் கீழுள்ளவாறு உள்ளிடவேண்டும்...


UserForm4.Show


அவ்வளவு தான் முடிந்தது.....

அடுத்து ஆண்டுக்கொரு முறை செலுத்தும் தொடர்வைப்புத் தொகைக்கு எப்படி? முதிர்வுத்தொகையை பயனர் படிவம் மூலம் கணக்கிடுவது எனபது பற்றி பார்க்கலாம்...

நன்றி!

nambi
09-11-2010, 12:07 PM
முழு ஆண்டு தொடர்வைப்புக்கான முதிர்வுத் தொகை கணக்கிடலுக்கான பயனர் படிவம்

அதாவது வருடம் ஒரு முறை ஒரு குறிப்பிட்ட வருடம் வரை செலுத்தும் தவணைத்தொகைக்கு கூட்டு வட்டி முறையில் பயனர் படிவம் பயன்படுத்தி கணக்கிடல்...

...மேற்குறிப்பிட்ட முறையிலேயே கீழே கொடுக்கப்பட்டுள்ள படத்தில் உள்ளது போல் பயனர் படிவம் உருவாக்கி......அதற்கான நிரல்களை உள்ளிட்வேண்டும்.

http://i837.photobucket.com/albums/zz297/nambitn/YLYRDUSERFORMSS.jpg


படத்தில் உள்ள கால்குலேட் என்ற பொத்தானை அழுத்தி கீழுள்ள நிரல்களை நகல் எடுத்து அப்படியே ஒட்டவேண்டும்...


Dim RDYlyInstalment As Currency
Dim InterestRate As Double
Dim AccumulatedDeposits As Currency
Dim InterestEarned As Currency
Dim MaturityValue As Currency
Dim RatePerPeriod As Double
Dim Periods As Integer
Dim CompoundType As Integer
Dim i As Double
Dim n As Integer

RDYlyInstalment = CCur(txtRDYlyInstalment.Text)
InterestRate = CDbl(txtInterestRate.Text) / 100

If optMonthly.Value = True Then
CompoundType = 12
ElseIf optQuarterly.Value = True Then
CompoundType = 4
ElseIf optSemiannually.Value = True Then
CompoundType = 2
Else
CompoundType = 1
End If
Periods = CInt(txtPeriods.Text)
i = InterestRate / CompoundType
n = CompoundType * Periods
RatePerPeriod = InterestRate / Periods

If optMonthly.Value = True Then
MaturityValue = RDYlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-12 / 1))
ElseIf optQuarterly.Value = True Then
MaturityValue = RDYlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-4 / 1))
ElseIf optSemiannually.Value = True Then
MaturityValue = RDYlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-2 / 1))

Else
MaturityValue = RDYlyInstalment * ((1 + i) ^ n - 1) / (1 - (1 + i) ^ (-1 / 1))

End If





InterestEarned = MaturityValue - (RDYlyInstalment * Periods)
AccumulatedDeposits = RDYlyInstalment * Periods
txtAccumulatedDeposits = FormatCurrency(AccumulatedDeposits)
txtInterestEarned.Text = FormatCurrency(InterestEarned)
txtAmountEarned.Text = FormatCurrency(MaturityValue)


அதன்பின் குளோஸ் பொத்தானை அழுத்தி....பின்வரும் நிரல்களை..நிரப்பவும்..


Unload Me


இதற்கு பின் மூன்றாவதாக தரவுத் தாளில் இந்த பயனர் படிவம் திறப்பதற்கான "Spl Hly RD Calculator" பொத்தானை தரவுத்தாள் கருவிப்பட்டியை கொண்டு வடிவமைத்து (மேலே குறிப்பிட்டுள்ளதை போன்று) )...அந்த பொத்தானை அழுத்தி கீழ்கண்ட நிரலை உள்ளிட வேண்டும்...

Code:


frmSpecialRDYearly.Show

(அல்லது)
பயனர் படிவ உட்கூறுவில் (பிராப்பர்ட்டீஸ்) மேற்கண்டவாறு பெயரிடாமல் இருந்தால் கீழுள்ளவாறு உள்ளிடவேண்டும்...




UserForm5.Show


அவ்வளவு தான் முடிந்தது.....

அடுத்து தரவுத்தாளில் வருமானத்திற்கான வரி எவ்வளவு? எனபதை கணக்கிட்டது போல் பயனர்படிவத்தில் எப்படி கணக்கிடலாம் என்பதை தனித்திரியாக காணலாம்...
நிறைவு.

இந்த பயனர் படிவம் பயன்படுத்தி வேறெதேனும் கணக்கீடு முறைகள் வடிவமைத்து இருந்தாலும் நண்பர்கள் இங்கு பகிர்ந்து கொள்ளலாம்.......

நன்றி!