1

Konu: Excelde hücre rengi değiştirme

Muhterem foxpo dostları,hepinize merhaba ..
efendim excelde  o anda okuduğumuz hücrenin ;
A ) Yazı rengini
B )Zemin rengini nasıl değiştirebiliriz

Birde üzerinde çalıştığımız excel dosyasının zaten açık ve kullanımda olduğu nasıl anlarız  ?Kullanıcıya dosya açık önce dosyayı kapatın gibi bir mesaj vermek istiyorum.
                                tüm dostlara selamlar:)

En büyük sermaye nakit,nakit sermaye vakittir...

2

Re: Excelde hücre rengi değiştirme

Selam Neyzen;

Dosyanın açık olup olmadığını Try Catch içerisinde kontrol edebilirsin. Eğer bir hata olşuyorsa Catch bloğunda dosyanın var olup olmadığını kontrol edersin. Dosya yok ise hata sebebi bellidir. Eğer dosya var ve yinede açamıyorsa KULLANIMDADIR.

Excel hücresini renklendirmek içinde :

Visual Fox Pro
*** Author: Cetin Basoz

 
lcXLS = Sys(5)+Curdir()+'Conditional.xls'
Rand(-1)
Select cust_id, Company, Iif(Int(Rand()*100)%2=0,0.05,Round(Rand(),2)) As myValue ;
  from customer ;
  into Cursor crsCustomer
Copy To (lcXLS) Type Xl5
 
 
#Define xlCellValue    1
#Define xlExpression    2
 
#Define xlBetween    1
#Define xlNotBetween    2
#Define xlEqual    3
#Define xlNotEqual    4
#Define xlGreater    5
#Define xlLess    6
#Define xlGreaterEqual    7
#Define xlLessEqual    8
 
lnRows = Reccount()
lnCols = Fcount()
 
Use In 'crsCustomer'
Use In 'customer'
 
oExcel = Createobject('Excel.Application')
With oExcel
  .WorkBooks.Open(lcXLS)
  ValueSample()
  .Visible = .T.
Endwith
 
Function ValueSample
lcRange = _GetChar(lnCols)+'2:'+;
  _GetChar(lnCols)+Ltrim(Str(lnRows+1)) && 1 header
With oExcel.ActiveWorkBook.ActiveSheet.Range(lcRange)
  .FormatConditions.Delete
 
  .FormatConditions.Add(xlCellValue, xlEqual, ".05" )
  .FormatConditions.Add(xlCellValue, xlLess, ".50" )
  .FormatConditions.Add(xlCellValue, xlGreaterEqual, ".8" )
  With .FormatConditions(1)
    .Font.ColorIndex = 1
    .Interior.ColorIndex = 4
    .Font.Bold = 1
  Endwith
  With .FormatConditions(2)
    .Font.ColorIndex = 1
    .Interior.ColorIndex = 44
    .Font.Bold = 1
  Endwith
  With .FormatConditions(3)
    .Font.ColorIndex = 1
    .Interior.ColorIndex = 3
    .Font.Bold = 1
  Endwith
 
Endwith
 
* Return A, AA, BC etc noation for nth column
Function _GetChar
Lparameters tnColumn && Convert tnvalue to Excel alpha notation
If tnColumn = 0
  Return ""
Endif
If tnColumn <= 26
  Return Chr(Asc("A")-1+tnColumn)
Else
  Return     _GetChar(Int(Iif(tnColumn % 26 = 0,tnColumn - 1, tnColumn) / 26)) + ;
    _GetChar((tnColumn-1)%26+1)
Endif
Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

3

Re: Excelde hücre rengi değiştirme

Göndermiş olduğun örnek için çok teşekkür ederim ugurlu2001 . hemen bir deneme yapacağım smile

En büyük sermaye nakit,nakit sermaye vakittir...

4

Re: Excelde hücre rengi değiştirme

Neyzen;

Kod Çetin Üstad'ın. Dolayısı ile teşekkür de smile

Uğur ...

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü

5

Re: Excelde hücre rengi değiştirme

Çetin hocama her zaman teşekkür ederim zaten,sağolsun bizlerden yardımlarını hiç esirgemez  :-)

En büyük sermaye nakit,nakit sermaye vakittir...