libxlsxwriter for Clarion

Программы на Clarion, шаблоны, библиотеки и пр.

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

libxlsxwriter for Clarion

Сообщение Игорь Столяров »

Можно я попробую восстановить последовательность ?

1. Вы создаёте XLSX документ и что-то там в него записываете.
2. Записываете этот документ в XLSX файл на диск.
3. Пытаетесь открыть содеянное в Microsoft Excel и получаете ошибку.

Если да, тогда замените:

Код: Выделить всё

    xlsx.Merge(RowST,1,RowST,5)
на

Код: Выделить всё

    If RowST > 0 then xlsx.Merge(RowST,1,RowST,5)
    else Message('Низя так: ' & RowST).
и попробуйте повторить создание XLSX.
За теми кто отстал - не возвращаться. (С) Кодекс
Larion
Бывалый
Сообщения: 91
Зарегистрирован: 28 Ноябрь 2005, 10:26
Откуда: Novosibirsk

libxlsxwriter for Clarion

Сообщение Larion »

Excel 2007
С уважением Larion.
Larion
Бывалый
Сообщения: 91
Зарегистрирован: 28 Ноябрь 2005, 10:26
Откуда: Novosibirsk

libxlsxwriter for Clarion

Сообщение Larion »

Код: Выделить всё

    If RowST > 0 then xlsx.Merge(RowST,1,RowST,5)
    else Message('Низя так: ' & RowST).
Ошибка не исчезла :(
С уважением Larion.
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

libxlsxwriter for Clarion

Сообщение Игорь Столяров »

Larion писал(а): 17 Март 2020, 18:42 Ошибка не исчезла
Ok ! Тогда другой вопрос: не может получиться так, что проблемный xlsx.Merge()
перекрывает область ячеек, которые уже были (или потом будут) объединены другим xlsx.Merge() ?

Нельзя, что бы объединяемые диапазоны ячеек накладывались или пересекались.
Проверьте пжалуйста Ваш код … :)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

libxlsxwriter for Clarion

Сообщение RaFaeL »

У вас пересечение объединяемых ячеек. Т.е. объединяете например с 3 по 5, а затем с 4 по 6. Так нельзя
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7327
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

libxlsxwriter for Clarion

Сообщение Игорь Столяров »

Кстати, ещё в самом начале, хотел переопределить в субклассе метод Merge() и добавить проверку пересечения
диапазонов ячеек - это не сложно, алгоритм известный (т.н. раскрой листа). Потом, не стал - как-то не особо надо … :)
За теми кто отстал - не возвращаться. (С) Кодекс
Larion
Бывалый
Сообщения: 91
Зарегистрирован: 28 Ноябрь 2005, 10:26
Откуда: Novosibirsk

libxlsxwriter for Clarion

Сообщение Larion »

RaFaeL писал(а): 17 Март 2020, 20:38 У вас пересечение объединяемых ячеек. Т.е. объединяете например с 3 по 5, а затем с 4 по 6. Так нельзя
Взял Queue и в реальном цикле записал параметры всех xlsx.Merge() .
Пересечений не выявил. Объединения ячеек происходят в разных строках без пересечений.
С уважением Larion.
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

libxlsxwriter for Clarion

Сообщение Admin »

Можно мне отчет в личку прислать? Посмотрю внутри.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

libxlsxwriter for Clarion

Сообщение Admin »

Там можно легко проверить относится ли проблема к merge.
Удалить внутри архива, к примеру в \xl\worksheets\sheet1.xml подобный блок:

Код: Выделить всё

<mergeCells count="2"><mergeCell ref="C3:E5"/><mergeCell ref="E5:F6"/></mergeCells>
И сохранить. Если дело в merge то после удаления этого блока файл откроется без ошибок.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
vic7tar
Ветеран
Сообщения: 365
Зарегистрирован: 09 Февраль 2017, 20:12

libxlsxwriter for Clarion

Сообщение vic7tar »

Larion писал(а): 17 Март 2020, 12:12 КОД: ВЫДЕЛИТЬ ВСЁ

err#=xlsx.Merge(RowST,1,RowST,5)
А err# что показывает?
C10, Win10x64
Larion
Бывалый
Сообщения: 91
Зарегистрирован: 28 Ноябрь 2005, 10:26
Откуда: Novosibirsk

libxlsxwriter for Clarion

Сообщение Larion »

vic7tar писал(а): 19 Март 2020, 10:44 А err# что показывает?
Ничего не показывает.
С уважением Larion.
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

libxlsxwriter for Clarion

Сообщение RaFaeL »

Larion писал(а): 19 Март 2020, 10:03 Пересечений не выявил
А если найду? )
Выложите файл, посмотрим )
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

libxlsxwriter for Clarion

Сообщение Admin »

Предварительно, дело в merge. Когда убрал - файл открылся. Сейчас поищу пересечения.
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
Admin
Администратор
Сообщения: 3959
Зарегистрирован: 05 Июль 2005, 15:59
Откуда: Хабаровск
Благодарил (а): 25 раз
Поблагодарили: 22 раза
Контактная информация:

libxlsxwriter for Clarion

Сообщение Admin »

Вот все мержы. Rafael найди если можешь. А то тут неожиданно занятие появилось...

Код: Выделить всё

H1:I6
A3:G3
A2:G2
A6:B7
C6:C7
D6:D7
E6:E7
F6:F7
G6:G7
A8:B8
A9:E9
A10:B10
A11:E11
A12:E18
H11:Y21
A19:B19
A20:B20
A29:E29
A30:B30
A31:B31
A32:B32
A33:E33
A34:B34
A35:B35
A36:B36
A37:B37
A38:B38
A39:B39
A40:B40
A41:E41
A42:B42
A43:E43
A44:B44
A45:B45
A46:B46
A47:B47
A48:B48
A49:B49
A50:B50
A51:E51
A52:B52
A53:E53
A54:B54
A55:E55
A56:B56
A57:E57
A58:B58
A59:E59
A60:B60
A61:B61
A62:B62
A63:E63
A64:B64
A65:B65
A66:E66
A67:B67
A68:B68
A69:E69
A70:B70
A71:B71
A72:B72
A73:E73
A74:B74
A75:B75
A76:B76
A77:B77
A78:B78
A79:B79
A80:B80
A81:B81
A82:B82
A83:B83
A84:E84
A85:B85
A86:E86
A87:B87
A88:B88
A89:E89
A90:B90
A91:B91
A92:B92
A93:B93
A94:B94
A95:B95
A96:B96
A97:B97
A98:E98
A99:B99
A100:E100
A101:B101
A102:E102
A103:B103
A104:E104
A105:B105
A106:B106
A107:B107
A108:B108
A109:B109
A110:B110
A111:B111
A112:B112
A113:B113
A114:B114
A115:B115
A116:B116
A117:B117
A118:B118
A119:B119
A120:B120
A121:E121
A122:B122
A123:B123
A124:E124
A125:B125
A126:B126
A127:B127
A128:B128
A129:B129
A130:B130
A131:B131
A132:B132
A133:B133
A134:B134
A135:B135
A136:B136
A137:B137
A138:B138
A139:E139
A140:B140
A141:B141
A142:B142
A143:B143
A144:B144
A145:B145
A146:E146
A147:B147
A148:B148
A149:E149
A150:B150
A151:B151
A152:E152
A153:B153
A154:B154
A155:B155
A156:E156
A157:B157
A158:B158
A159:E159
A160:B160
A161:B161
A162:B162
A163:B163
A164:B164
A165:B165
A166:B166
A167:B167
A168:E168
A169:B169
A170:E170
A171:B171
A172:B172
A173:B173
A174:B174
A175:E175
A176:B176
A177:B177
A178:B178
A179:E179
A180:B180
A181:E181
A182:B182
A183:E183
A184:B184
A185:B185
A186:B186
A187:E187
A188:B188
A189:B189
A190:B190
A191:B191
A192:B192
A193:B193
A194:E194
A195:B195
A196:B196
A197:B197
A198:B198
A199:B199
A200:B200
A201:B201
A202:E202
A203:B203
A204:E204
A205:B205
A206:B206
A207:B207
A208:B208
A209:B209
A210:B210
A211:B211
A212:B212
A213:B213
A214:B214
A215:B215
A216:B216
A217:B217
A218:B218
A219:B219
A220:B220
A221:B221
A222:B222
A223:B223
A224:B224
A225:E225
A226:B226
A227:B227
A228:B228
A229:B229
A230:B230
A231:B231
A232:B232
A233:B233
A234:B234
A235:E235
A236:B236
A237:B237
A238:B238
A239:B239
A240:B240
A241:B241
A242:B242
A243:B243
A244:B244
A245:B245
A246:B246
A247:B247
A248:B248
A249:B249
A250:B250
A251:B251
A252:B252
A253:B253
A254:B254
A255:B255
A256:E256
A257:B257
A258:B258
A259:B259
A260:B260
A261:B261
A262:B262
A263:B263
A264:B264
A265:E265
A266:B266
A267:B267
A268:E268
A269:B269
A270:E270
A271:B271
A272:B272
A273:B273
A274:B274
A275:B275
A276:B276
A277:E277
A278:B278
A279:E279
A280:B280
A281:B281
A282:B282
A283:B283
A284:E284
A285:B285
A286:E286
A287:B287
A288:E288
A289:B289
A290:B290
A291:E291
A292:B292
A293:E293
A294:B294
A295:B295
A296:E296
A297:B297
A298:E298
A299:B299
A300:B300
A301:B301
A302:B302
A303:B303
A304:B304
A305:B305
A306:E306
A307:B307
A308:B308
A309:E309
A310:B310
A311:E311
A312:B312
A313:B313
A314:B314
A315:E315
A316:B316
A317:B317
A318:B318
A319:B319
A320:B320
A321:B321
A322:B322
A323:B323
A324:B324
A325:B325
A326:B326
A327:B327
A328:B328
A329:B329
A330:B330
A331:B331
A332:B332
A333:B333
A334:B334
A335:B335
A336:B336
A337:B337
A338:B338
A339:B339
A340:B340
A341:B341
A342:B342
A343:E343
A344:B344
A345:E345
A346:B346
A347:B347
A348:B348
A349:B349
A350:B350
A351:B351
A352:B352
A353:B353
A354:B354
A355:B355
A356:B356
A357:B357
A358:B358
A359:E359
A360:B360
A361:B361
A362:B362
A363:B363
A364:E364
A365:B365
A366:B366
A367:B367
A368:B368
A369:B369
A370:B370
A371:B371
A372:B372
A373:B373
A374:B374
A375:B375
A376:B376
A377:E377
A378:B378
A379:B379
A380:B380
A381:B381
A382:B382
A383:B383
A384:B384
A385:E385
A386:B386
A387:B387
A388:B388
A389:B389
A390:B390
A391:E391
A392:B392
A393:B393
A394:E394
A395:B395
A396:B396
A397:B397
A398:E398
A399:B399
A400:B400
A401:B401
A402:B402
A403:B403
A404:E404
A405:B405
A406:E406
A407:B407
A408:B408
A409:B409
A410:B410
A411:B411
A412:B412
A413:B413
A414:B414
A415:B415
A416:B416
A417:B417
A418:B418
A419:B419
A420:E420
A421:B421
A422:B422
A423:B423
A424:B424
A425:B425
A426:B426
A427:B427
A428:B428
A429:B429
A430:B430
A431:B431
A432:B432
A433:B433
A434:B434
A435:B435
A436:B436
A437:B437
A438:B438
A439:B439
A440:E440
A441:B441
A442:E442
A443:B443
A444:E444
A445:B445
A446:B446
A447:B447
A448:E448
A449:B449
A450:E450
A451:B451
A452:E452
A453:B453
A454:B454
A455:E455
A456:B456
A457:E457
A458:B458
A459:E459
A460:B460
A461:E461
A462:B462
A463:E463
A464:B464
A465:E465
A466:B466
A467:E467
A468:B468
A469:B469
A470:B470
A471:E471
A472:B472
A473:B473
A474:B474
A475:B475
A476:B476
A477:B477
A478:B478
A479:B479
A480:B480
A481:B481
A482:B482
A483:B483
A484:E484
A485:B485
A486:B486
A487:B487
A488:B488
A489:E489
A490:B490
A491:B491
A492:E492
A493:B493
A494:B494
A495:E495
A496:B496
A497:B497
A498:E498
A499:B499
A500:B500
A501:B501
A502:B502
A503:B503
A504:B504
A505:B505
A506:B506
A507:B507
A508:B508
A509:B509
A510:E510
A511:B511
A512:B512
A513:B513
A514:B514
A515:E515
A516:B516
A517:B517
A518:B518
A519:B519
A520:B520
A521:B521
A522:B522
A523:B523
A524:B524
A525:B525
A526:B526
A527:B527
A528:B528
A529:B529
A530:B530
A531:B531
A532:B532
A533:B533
A534:E534
A535:B535
A536:B536
A537:B537
A538:B538
A539:B539
A540:B540
A541:B541
A542:B542
A543:B543
A544:B544
A545:B545
A546:B546
A547:B547
A548:B548
A549:B549
A550:B550
A551:B551
A552:B552
A553:E553
A554:B554
A555:B555
A556:E556
A557:B557
A558:B558
A559:B559
A560:B560
A561:B561
A562:B562
A563:B563
A564:B564
A565:B565
A566:B566
A567:B567
A568:E568
A569:B569
A570:B570
A571:E571
A572:B572
A573:B573
A574:B574
A575:B575
A576:B576
A577:E577
A578:B578
A579:B579
A580:B580
A581:E581
A582:B582
A583:B583
A584:B584
A585:B585
A586:B586
A587:B587
A587:E587
A588:B588
A589:B589
A590:E590
A591:B591
A592:B592
A593:B593
A594:B594
A595:B595
A596:B596
A597:B597
A598:E598
A599:B599
A600:B600
A601:E601
A602:B602
A603:E603
A604:B604
A605:B605
A606:E606
A607:B607
A608:B608
A609:E609
A610:B610
A611:B611
A612:B612
A613:B613
A614:E614
A615:B615
A616:E616
A617:B617
A618:B618
A619:B619
A620:B620
A621:E621
A622:B622
A623:B623
A624:B624
A625:E625
A626:B626
A627:E627
A628:B628
A629:B629
A630:E630
A631:B631
A632:B632
A633:B633
A634:E634
A635:B635
A636:E636
A637:B637
A638:E638
A639:B639
A640:B640
A641:E641
A642:B642
A643:B643
A644:B644
A645:B645
A646:B646
A647:B647
A648:E648
A649:B649
A650:B650
A651:B651
A652:B652
A653:B653
A654:E654
A655:B655
A656:E656
A657:B657
A658:E658
A659:B659
A660:B660
A661:E661
A662:B662
A663:B663
A664:E664
A665:B665
A666:B666
A667:E667
A668:B668
A669:B669
A670:E670
A671:B671
A672:B672
A673:E673
A674:B674
A675:E675
A676:B676
A677:E677
A678:B678
A679:B679
A680:E680
A681:B681
A682:B682
A683:B683
A684:E684
A685:B685
A686:E686
A687:B687
A688:B688
A689:E689
A690:B690
A691:E691
A692:B692
A693:E693
A694:B694
A695:B695
A696:E696
A697:B697
A698:E698
A699:B699
A700:E700
A701:B701
A702:E702
A703:B703
A704:E704
A705:B705
A706:E706
A707:B707
A708:E708
A709:B709
A710:E710
A711:B711
A712:E712
A713:B713
A714:B714
A715:B715
A716:B716
A717:E717
A718:B718
A719:E719
A720:B720
A721:B721
A722:B722
A723:E723
A724:B724
A725:B725
A726:E726
A727:B727
A728:E728
A729:B729
A730:B730
A731:B731
A732:E732
A733:B733
A734:E734
A735:B735
A736:E736
A737:B737
A738:B738
A739:E739
A740:B740
A741:E741
A742:B742
A743:B743
A744:B744
A745:B745
A746:E746
A747:B747
A748:E748
A749:B749
A750:B750
A751:E751
A752:B752
A753:E753
A754:B754
A755:E755
A756:B756
A757:B757
A758:B758
A759:E759
A760:B760
A761:B761
A762:B762
A763:E763
A764:B764
A765:B765
A766:E766
A767:B767
A768:B768
A769:E769
A770:B770
A771:B771
A772:E772
A773:B773
A774:E774
A775:B775
A776:B776
A777:E777
A778:B778
A779:E779
A780:B780
A781:E781
A782:B782
A783:E783
A784:B784
A785:B785
A786:E786
A787:B787
A788:E788
A789:B789
A790:E790
A791:B791
A792:E792
A793:B793
A794:B794
A795:B795
A796:B796
A797:E797
A798:B798
A799:E799
A800:B800
A801:E801
A802:B802
A803:B803
A804:B804
A805:E805
A806:B806
A807:E807
A808:B808
A809:E809
A810:B810
A811:E811
A812:B812
A813:B813
A814:E814
A815:B815
A816:B816
A817:E817
A818:B818
A819:B819
A820:B820
A821:B821
A822:E822
A823:B823
A824:B824
A825:B825
A826:E826
A827:B827
A828:B828
A829:E829
A830:B830
A831:B831
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

libxlsxwriter for Clarion

Сообщение RaFaeL »

Admin писал(а): 19 Март 2020, 12:55 A587:B587
A587:E587
Ответить